mirror of
https://github.com/EQEmu/Server.git
synced 2026-05-31 17:26:30 +00:00
Compare commits
125 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d6bdaa5c6e | |||
| 593127fb7e | |||
| 67df6f62b7 | |||
| 4572dbc426 | |||
| e8cc160572 | |||
| 8c9adca852 | |||
| b53310e23b | |||
| 14f01dc2d7 | |||
| a4d6509e6d | |||
| fc835bfb0e | |||
| 9ec4e5ade0 | |||
| 6b65e93a06 | |||
| a0a28fef04 | |||
| 034feb4ff4 | |||
| 65c14b160e | |||
| c21d47f450 | |||
| 83ea9816b8 | |||
| e3f9b396ab | |||
| 2a6cf8c8e7 | |||
| be567af70d | |||
| 6494fbf916 | |||
| 2cc61ef8c1 | |||
| 5d7a7bb4b2 | |||
| 00f82f43a6 | |||
| d3ca636a70 | |||
| 01855d40df | |||
| 748602b04e | |||
| a97a9a0d1c | |||
| a78c754c0e | |||
| ef214f91e9 | |||
| 04a74df0b2 | |||
| c15bfe12eb | |||
| 5702f7bcd1 | |||
| 9a5bf53e11 | |||
| 69c6a7b89a | |||
| 2f0dbc5d15 | |||
| 93c79817cd | |||
| 3296287d70 | |||
| 774a7fa779 | |||
| 1ff4541a9f | |||
| 3448758c03 | |||
| ff4ccfa98f | |||
| d2c3c14ae0 | |||
| a470931fdd | |||
| 078db3460d | |||
| 0980a780d0 | |||
| 7f01bb509c | |||
| 4bb189cbf4 | |||
| b03e8ff0fb | |||
| 6179b7481e | |||
| 5f68e4a41a | |||
| e103422ca5 | |||
| 0cbfad975d | |||
| 2a20c69c69 | |||
| de2dfc1a7e | |||
| bad631df59 | |||
| e8f1aa253a | |||
| 889e57a5af | |||
| 5cfdeb928e | |||
| 7519b0225e | |||
| 04fdc54522 | |||
| f39155952f | |||
| 5acc181d64 | |||
| 2ae0b7dd3e | |||
| b0d4f095ef | |||
| 7c7a88650b | |||
| afaa8f4100 | |||
| 0d72295cc9 | |||
| 9d4f231619 | |||
| fcb0a47280 | |||
| 1e50f19f7e | |||
| 33bb5aa8e5 | |||
| 6a668f8aa5 | |||
| df499b22ab | |||
| 7bc00cb466 | |||
| 51f6108aab | |||
| c13f9f80d9 | |||
| 443abf9199 | |||
| 1556e05b2f | |||
| 1d645aa5f6 | |||
| 9f42da5bad | |||
| 4a8222f243 | |||
| db4c515853 | |||
| 462656a201 | |||
| ddd98be383 | |||
| 4ad3ebf36a | |||
| b5a2713a3a | |||
| 999fe10d86 | |||
| ce1472db1e | |||
| d6c6b78d8a | |||
| ee6c9a2ad7 | |||
| 3e4767269e | |||
| e0eb145081 | |||
| a6dd65435f | |||
| 26dc05c0dc | |||
| da20a6ab67 | |||
| 3949a31246 | |||
| e898be1ce9 | |||
| 2962575dda | |||
| 6a6045a21c | |||
| 717fe7dc8c | |||
| df69d12c0c | |||
| 99e49cb2ec | |||
| 5ee2856133 | |||
| 4a64048744 | |||
| 2ae795fd61 | |||
| 0829bc08b8 | |||
| 903a385229 | |||
| fafa33e190 | |||
| 90a01f7c53 | |||
| 19434197d4 | |||
| 18b62667f0 | |||
| 8ed7ca977f | |||
| 665e336946 | |||
| ccf8504dec | |||
| d107213fe1 | |||
| c115cbcd6a | |||
| 064ae7ba89 | |||
| 02302802b8 | |||
| 536e248424 | |||
| 5b56a23a8a | |||
| 97edb09fba | |||
| 85f7b10f90 | |||
| 0f49fbcfcd | |||
| e57979c3a8 |
+321
@@ -1,3 +1,324 @@
|
|||||||
|
## [22.4.5] - 03/03/2023
|
||||||
|
|
||||||
|
### Bots
|
||||||
|
|
||||||
|
* Add additional Heroic Sta/Wis/Int bonuses for Bots. ([#3013](https://github.com/EQEmu/Server/pull/3013)) @Aeadoin 2023-03-01
|
||||||
|
* Cleanup AI_IdleCastCheck Logic ([#3004](https://github.com/EQEmu/Server/pull/3004)) @Aeadoin 2023-02-26
|
||||||
|
|
||||||
|
### Code
|
||||||
|
|
||||||
|
* Delete unused zone/skills.h ([#3007](https://github.com/EQEmu/Server/pull/3007)) @Kinglykrab 2023-02-27
|
||||||
|
* Remove DumpPacketProfile() from client.h ([#3000](https://github.com/EQEmu/Server/pull/3000)) @Kinglykrab 2023-02-26
|
||||||
|
* Remove GetCombinedAC_TEST() from client.h ([#2999](https://github.com/EQEmu/Server/pull/2999)) @Kinglykrab 2023-02-26
|
||||||
|
* Remove GetDamageMultiplier() from client.h ([#3001](https://github.com/EQEmu/Server/pull/3001)) @Kinglykrab 2023-02-26
|
||||||
|
* Remove NumberOfAvailableTitles() from titles.h ([#3006](https://github.com/EQEmu/Server/pull/3006)) @Kinglykrab 2023-02-27
|
||||||
|
* Remove ReturnItemPacket from client.h/inventory.cpp ([#3002](https://github.com/EQEmu/Server/pull/3002)) @Kinglykrab 2023-02-26
|
||||||
|
* Remove class EGNode from mob.h ([#3003](https://github.com/EQEmu/Server/pull/3003)) @Kinglykrab 2023-02-26
|
||||||
|
* Remove unused ClientFactory in client.h ([#2998](https://github.com/EQEmu/Server/pull/2998)) @Kinglykrab 2023-02-26
|
||||||
|
* Remove unused iterator from LoadCharacterDisciplines ([#3012](https://github.com/EQEmu/Server/pull/3012)) @Aeadoin 2023-03-02
|
||||||
|
|
||||||
|
### Crash
|
||||||
|
|
||||||
|
* Fix crash in CheckTradeskillLoreConflict ([#3009](https://github.com/EQEmu/Server/pull/3009)) @Aeadoin 2023-02-28
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
* Account for bad data in Tradeskill Recipe Entries ([#2991](https://github.com/EQEmu/Server/pull/2991)) @Aeadoin 2023-02-25
|
||||||
|
* Fix DoAnim quest method default speed ([#3016](https://github.com/EQEmu/Server/pull/3016)) @Kinglykrab 2023-03-01
|
||||||
|
* Fix an issue where EVENT_TIMER timers would not be cleaned up after zone ([#3018](https://github.com/EQEmu/Server/pull/3018)) @noudess 2023-03-03
|
||||||
|
* Fix for Discipline Loading from Database causing issues with slot_ids ([#3008](https://github.com/EQEmu/Server/pull/3008)) @Aeadoin 2023-02-28
|
||||||
|
* Fix for Lore Components where component is returned. ([#3005](https://github.com/EQEmu/Server/pull/3005)) @Aeadoin 2023-02-27
|
||||||
|
* Fix issue where quest saylink responses would occur before the NPC's response ([#3010](https://github.com/EQEmu/Server/pull/3010)) @Akkadius 2023-03-01
|
||||||
|
* Fix log messages when players join channel ([#2992](https://github.com/EQEmu/Server/pull/2992)) @Valorith 2023-03-03
|
||||||
|
* Fix npcfeature and playerfeature ([#3017](https://github.com/EQEmu/Server/pull/3017)) @Kinglykrab 2023-03-02
|
||||||
|
|
||||||
|
### Quest API
|
||||||
|
|
||||||
|
* Add GetDefaultRaceSize() to Perl/Lua ([#2993](https://github.com/EQEmu/Server/pull/2993)) @Kinglykrab 2023-02-27
|
||||||
|
* Add HasSpecialAbilities() to Perl/Lua ([#2994](https://github.com/EQEmu/Server/pull/2994)) @Kinglykrab 2023-02-27
|
||||||
|
* Add IsBerserk() to Perl/Lua ([#2997](https://github.com/EQEmu/Server/pull/2997)) @Kinglykrab 2023-03-01
|
||||||
|
* Add IsFindable() and IsTrackable() to Perl/Lua ([#2996](https://github.com/EQEmu/Server/pull/2996)) @Kinglykrab 2023-03-01
|
||||||
|
* Add IsUnderwaterOnly() to Perl/Lua ([#2995](https://github.com/EQEmu/Server/pull/2995)) @Kinglykrab 2023-03-01
|
||||||
|
|
||||||
|
## [22.4.4] - 02/24/2023
|
||||||
|
|
||||||
|
### Bots
|
||||||
|
|
||||||
|
* Add Caster Range Command, and IsValidSpellRange Checks ([#2942](https://github.com/EQEmu/Server/pull/2942)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-23
|
||||||
|
* Cleanup BotDatabase::LoadBuffs ([#2981](https://github.com/EQEmu/Server/pull/2981)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-24
|
||||||
|
* Verify Bots Group Integrity on join ([#2980](https://github.com/EQEmu/Server/pull/2980)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-23
|
||||||
|
|
||||||
|
### Commands
|
||||||
|
|
||||||
|
* Cleanup #peekinv Command ([#2969](https://github.com/EQEmu/Server/pull/2969)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-23
|
||||||
|
|
||||||
|
### Doors
|
||||||
|
|
||||||
|
* Fix doors triggering invalid zone fetches of dest_zone of "none" ([#2985](https://github.com/EQEmu/Server/pull/2985)) ([Akkadius](https://github.com/Akkadius)) 2023-02-24
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
* Adjust database manifest to include .sql extension ([Akkadius](https://github.com/Akkadius)) 2023-02-25
|
||||||
|
* Correct Mend reuse time and add reduction support. ([#2972](https://github.com/EQEmu/Server/pull/2972)) ([nytmyr](https://github.com/nytmyr)) 2023-02-23
|
||||||
|
* Fix Beneficial Target of Target procs ([#2987](https://github.com/EQEmu/Server/pull/2987)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-24
|
||||||
|
* Fix for undefined MySQL library behavior. ([#2834](https://github.com/EQEmu/Server/pull/2834)) ([KimLS](https://github.com/KimLS)) 2023-02-25
|
||||||
|
|
||||||
|
### Pathing
|
||||||
|
|
||||||
|
* Improve roambox logic ([#2983](https://github.com/EQEmu/Server/pull/2983)) ([Akkadius](https://github.com/Akkadius)) 2023-02-24
|
||||||
|
* More z-clip improvements, Wurm and Spectral Iksar race adjustments ([#2988](https://github.com/EQEmu/Server/pull/2988)) ([Akkadius](https://github.com/Akkadius)) 2023-02-25
|
||||||
|
* Smoother pathing z-correction ([#2982](https://github.com/EQEmu/Server/pull/2982)) ([Akkadius](https://github.com/Akkadius)) 2023-02-24
|
||||||
|
|
||||||
|
### Player Events
|
||||||
|
|
||||||
|
* Add QS processing, mutex tweaks ([#2984](https://github.com/EQEmu/Server/pull/2984)) ([Akkadius](https://github.com/Akkadius)) 2023-02-25
|
||||||
|
|
||||||
|
### Quest API
|
||||||
|
|
||||||
|
* Add IsAutoAttackEnabled() to Perl/Lua ([#2979](https://github.com/EQEmu/Server/pull/2979)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-23
|
||||||
|
* Add IsAutoFireEnabled() to Perl/Lua ([#2978](https://github.com/EQEmu/Server/pull/2978)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-23
|
||||||
|
* Fix EVENT_TIMER crash when entity is no longer available ([#2986](https://github.com/EQEmu/Server/pull/2986)) ([Akkadius](https://github.com/Akkadius)) 2023-02-24
|
||||||
|
|
||||||
|
### Scaling
|
||||||
|
|
||||||
|
* Add support for zone ID and instance version to NPC Scaling ([#2968](https://github.com/EQEmu/Server/pull/2968)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-25
|
||||||
|
|
||||||
|
### Tradeskills
|
||||||
|
|
||||||
|
* Fix for Lore Conflict ([#2977](https://github.com/EQEmu/Server/pull/2977)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-24
|
||||||
|
|
||||||
|
## [22.4.3] - 02/21/2023
|
||||||
|
|
||||||
|
### Bots
|
||||||
|
|
||||||
|
* Change HasBotItem(item_id) to return slot_id instead of bool. ([#2966](https://github.com/EQEmu/Server/pull/2966)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-19
|
||||||
|
* Change SaveTimers to Replace instead of Insert. ([#2951](https://github.com/EQEmu/Server/pull/2951)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-18
|
||||||
|
* Fix output of ^spells while ^Enforcespellsettings is enabled ([#2959](https://github.com/EQEmu/Server/pull/2959)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-18
|
||||||
|
|
||||||
|
### Crash
|
||||||
|
|
||||||
|
* Fix crash with EVENT_UNEQUIP_ITEM_BOT ([#2973](https://github.com/EQEmu/Server/pull/2973)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-20
|
||||||
|
* Fix world crash in player event processing ([#2960](https://github.com/EQEmu/Server/pull/2960)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### Database
|
||||||
|
|
||||||
|
* Address deadlock in player events ([#2974](https://github.com/EQEmu/Server/pull/2974)) ([Akkadius](https://github.com/Akkadius)) 2023-02-21
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
* Fix MIR LDoN Theme Items on LDoN Merchants ([#2971](https://github.com/EQEmu/Server/pull/2971)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-20
|
||||||
|
* Fix OOCMute not functioning ([#2970](https://github.com/EQEmu/Server/pull/2970)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-20
|
||||||
|
|
||||||
|
### Pathing
|
||||||
|
|
||||||
|
* Improvements to z-clipping, z-recovery and z-calculations ([#2975](https://github.com/EQEmu/Server/pull/2975)) ([Akkadius](https://github.com/Akkadius)) 2023-02-21
|
||||||
|
|
||||||
|
### Pets
|
||||||
|
|
||||||
|
* Client Pet summoned by NPC should not change guard location. ([#2967](https://github.com/EQEmu/Server/pull/2967)) ([noudess](https://github.com/noudess)) 2023-02-19
|
||||||
|
|
||||||
|
### Player Events
|
||||||
|
|
||||||
|
* Create new event ITEM_CREATION ([#2944](https://github.com/EQEmu/Server/pull/2944)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### Quest API
|
||||||
|
|
||||||
|
* Add client->SignalClient() overload to Perl ([#2963](https://github.com/EQEmu/Server/pull/2963)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-19
|
||||||
|
* Fix Perl SetSimpleRoamBox Overloads ([#2961](https://github.com/EQEmu/Server/pull/2961)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-19
|
||||||
|
|
||||||
|
### Reload API
|
||||||
|
|
||||||
|
* Add world handlers for certain opcodes ([#2958](https://github.com/EQEmu/Server/pull/2958)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### SQL
|
||||||
|
|
||||||
|
* Add date to optional Drakkin Guktan Faction Update ([#2965](https://github.com/EQEmu/Server/pull/2965)) ([joligario](https://github.com/joligario)) 2023-02-19
|
||||||
|
|
||||||
|
## [22.4.2] - 02/18/2023
|
||||||
|
|
||||||
|
### Content
|
||||||
|
|
||||||
|
* Added optional SQL 2023_02_17_fix_sseru_mischief_doors.sql to fix sseru/mischief doors ([#2955](https://github.com/EQEmu/Server/pull/2955)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### Logging
|
||||||
|
|
||||||
|
* Remove noisy raid/group/forage errors ([#2952](https://github.com/EQEmu/Server/pull/2952)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### MySQL
|
||||||
|
|
||||||
|
* Add keepalives to UCS and Loginserver ([#2953](https://github.com/EQEmu/Server/pull/2953)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### Player Events
|
||||||
|
|
||||||
|
* Add logging category to hold processing batch logs ([#2954](https://github.com/EQEmu/Server/pull/2954)) ([Akkadius](https://github.com/Akkadius)) 2023-02-18
|
||||||
|
|
||||||
|
### Tradeskills
|
||||||
|
|
||||||
|
* Fix regression caused by #2932 ([#2956](https://github.com/EQEmu/Server/pull/2956)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-18
|
||||||
|
|
||||||
|
## [22.4.1] - 02/17/2023
|
||||||
|
|
||||||
|
### Bots
|
||||||
|
|
||||||
|
* Set Taunt to enabled for SK/Paladin Bots by Default. ([#2941](https://github.com/EQEmu/Server/pull/2941)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-17
|
||||||
|
|
||||||
|
### DevTools
|
||||||
|
|
||||||
|
* Fix NPC targetting dev tools display window ([#2943](https://github.com/EQEmu/Server/pull/2943)) ([Akkadius](https://github.com/Akkadius)) 2023-02-17
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
* Issue with AssignRaidToInstance that was using the groups repository instead of raid ([#2947](https://github.com/EQEmu/Server/pull/2947)) ([Akkadius](https://github.com/Akkadius)) 2023-02-17
|
||||||
|
* Missing comma in schema list breaking dumps ([Akkadius](https://github.com/Akkadius)) 2023-02-17
|
||||||
|
|
||||||
|
### Player Events
|
||||||
|
|
||||||
|
* Fix issue with item instances not being validated properly before accessing causing crashes on handin ([#2945](https://github.com/EQEmu/Server/pull/2945)) ([Akkadius](https://github.com/Akkadius)) 2023-02-17
|
||||||
|
* Fix rare out of bound issue when loading event types ([#2946](https://github.com/EQEmu/Server/pull/2946)) ([Akkadius](https://github.com/Akkadius)) 2023-02-17
|
||||||
|
* Turn off KILLED_NPC (trash) off by default ([#2948](https://github.com/EQEmu/Server/pull/2948)) ([Akkadius](https://github.com/Akkadius)) 2023-02-17
|
||||||
|
|
||||||
|
## [22.4.0] - 02/17/2023
|
||||||
|
|
||||||
|
### Bots
|
||||||
|
|
||||||
|
* Add Additional HeroicAgi/Dex Modifiers. ([#2838](https://github.com/EQEmu/Server/pull/2838)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-07
|
||||||
|
* Add Additional HeroicStr modifiers. ([#2837](https://github.com/EQEmu/Server/pull/2837)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-07
|
||||||
|
* Add IsBot() to methods in attack.cpp where applicable. ([#2840](https://github.com/EQEmu/Server/pull/2840)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-09
|
||||||
|
* Add Lore Check for Augments. ([#2874](https://github.com/EQEmu/Server/pull/2874)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-12
|
||||||
|
* Add Pet Power Support for Temp Pets. ([#2853](https://github.com/EQEmu/Server/pull/2853)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-11
|
||||||
|
* Add Support for TryTriggerOnCastFocusEffect ([#2864](https://github.com/EQEmu/Server/pull/2864)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-13
|
||||||
|
* Add TotalDominationBonus modifiers. ([#2852](https://github.com/EQEmu/Server/pull/2852)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-09
|
||||||
|
* ST_AreaClientOnly spells to land on Bots ([#2849](https://github.com/EQEmu/Server/pull/2849)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-09
|
||||||
|
* Update ResistSpell to use temp_level_diff client formula ([#2851](https://github.com/EQEmu/Server/pull/2851)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-09
|
||||||
|
|
||||||
|
### Bots & Mercenaries
|
||||||
|
|
||||||
|
* Add 100% Hit chance if sitting while attacked. ([#2839](https://github.com/EQEmu/Server/pull/2839)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-07
|
||||||
|
* Add Support for TrySympatheticProc ([#2866](https://github.com/EQEmu/Server/pull/2866)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-13
|
||||||
|
|
||||||
|
### CI
|
||||||
|
|
||||||
|
* Fix Windows stderr not bubbling properly ([#2925](https://github.com/EQEmu/Server/pull/2925)) ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
|
||||||
|
### Code
|
||||||
|
|
||||||
|
* Add IsOfClientBot() virtual method. ([#2845](https://github.com/EQEmu/Server/pull/2845)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-07
|
||||||
|
* Doors EVENT_CLICK_DOOR syntax adjustment ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Remove Unused Mod Hooks ([#2856](https://github.com/EQEmu/Server/pull/2856)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
|
||||||
|
### Crash
|
||||||
|
|
||||||
|
* Crash fix where invalid input to #heromodel would crash zone ([#2937](https://github.com/EQEmu/Server/pull/2937)) ([Akkadius](https://github.com/Akkadius)) 2023-02-15
|
||||||
|
* Fix Bot Crash in Bot::Bot Constructor. ([#2868](https://github.com/EQEmu/Server/pull/2868)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-12
|
||||||
|
* Fix Crash in FindType ([#2867](https://github.com/EQEmu/Server/pull/2867)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-13
|
||||||
|
* Fix crash in Mob::CommonDamage when attacker was null ([#2872](https://github.com/EQEmu/Server/pull/2872)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-13
|
||||||
|
* Fix crash issue with dropping items and order of operations ([#2939](https://github.com/EQEmu/Server/pull/2939)) ([joligario](https://github.com/joligario)) 2023-02-16
|
||||||
|
* Fix issue where long short names overflow file_name ([Akkadius](https://github.com/Akkadius)) 2023-02-09
|
||||||
|
* Fix potential crash in Mob::CommonDamage ([#2848](https://github.com/EQEmu/Server/pull/2848)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-09
|
||||||
|
|
||||||
|
### Doors
|
||||||
|
|
||||||
|
* Fix issue where NPC's wouldn't open doors because door param overflow ([#2934](https://github.com/EQEmu/Server/pull/2934)) ([Akkadius](https://github.com/Akkadius)) 2023-02-15
|
||||||
|
|
||||||
|
### Feature
|
||||||
|
|
||||||
|
* Add IsOfClientBotMerc() virtual method. ([#2843](https://github.com/EQEmu/Server/pull/2843)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-07
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
* Another doors fix ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Fix CheckNumHitsRemaining() with 1H Blunt ([#2846](https://github.com/EQEmu/Server/pull/2846)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-07
|
||||||
|
* Fix Door opening regression caused by #2880 ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Fix EVENT_SPELL_EFFECT_TRANSLOCATE_COMPLETE regression caused by #2897 ([#2928](https://github.com/EQEmu/Server/pull/2928)) ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Fix HP_EVENT regression ([#2927](https://github.com/EQEmu/Server/pull/2927)) ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Fix crash in EVENT_DISCOVER_ITEM ([#2933](https://github.com/EQEmu/Server/pull/2933)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-15
|
||||||
|
* Fix crash where dropped items crash Lua logic ([#2936](https://github.com/EQEmu/Server/pull/2936)) ([Akkadius](https://github.com/Akkadius)) 2023-02-15
|
||||||
|
* Fix for interrupting item casts to no longer lock the client if cast time of item greater than 0 ([#2921](https://github.com/EQEmu/Server/pull/2921)) ([Natedog2012](https://github.com/Natedog2012)) 2023-02-13
|
||||||
|
* Fix issue where Lore groundspawn pickups will desync ROF2+ ([#2929](https://github.com/EQEmu/Server/pull/2929)) ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Fix issue with EVENT_HP firing regression from #2904 ([#2924](https://github.com/EQEmu/Server/pull/2924)) ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
* Replace uses of SPELL_UNKNOWN with IsValidSpell() ([#2938](https://github.com/EQEmu/Server/pull/2938)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-16
|
||||||
|
* Self Only Spells will no longer check target level or buff restrictions ([#2931](https://github.com/EQEmu/Server/pull/2931)) ([noudess](https://github.com/noudess)) 2023-02-15
|
||||||
|
|
||||||
|
### Groundspawns
|
||||||
|
|
||||||
|
* Fix issue where groundspawns appear floating high off the ground ([#2930](https://github.com/EQEmu/Server/pull/2930)) ([Akkadius](https://github.com/Akkadius)) 2023-02-15
|
||||||
|
|
||||||
|
### Logging
|
||||||
|
|
||||||
|
* Add raw opcode when emu translated opcode is not found (OP_Unknown) via (C->S) ([#2847](https://github.com/EQEmu/Server/pull/2847)) ([Akkadius](https://github.com/Akkadius)) 2023-02-08
|
||||||
|
* Implement Player Event Logging system ([#2833](https://github.com/EQEmu/Server/pull/2833)) ([Akkadius](https://github.com/Akkadius)) 2023-02-13
|
||||||
|
|
||||||
|
### Quest API
|
||||||
|
|
||||||
|
* (Performance) Check equip or scale item events exist before export and execute ([#2898](https://github.com/EQEmu/Server/pull/2898)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_AA_BUY or EVENT_AA_GAIN exist before export and execute ([#2892](https://github.com/EQEmu/Server/pull/2892)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_AGGRO, EVENT_ATTACK, or EVENT_COMBAT exist before export and execute ([#2901](https://github.com/EQEmu/Server/pull/2901)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_COMBINE, EVENT_COMBINE_SUCCESS, EVENT_COMBINE_FAILURE, or EVENT_COMBINE_VALIDATE exist before export and execute ([#2896](https://github.com/EQEmu/Server/pull/2896)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_DEATH, EVENT_DEATH_COMPLETE, or EVENT_DEATH_ZONE exist before export and execute ([#2909](https://github.com/EQEmu/Server/pull/2909)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_ENVIRONMENTAL_DAMAGE exists before export and execute ([#2899](https://github.com/EQEmu/Server/pull/2899)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_FEIGN_DEATH exists before export and execute ([#2916](https://github.com/EQEmu/Server/pull/2916)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_ITEM_TICK or EVENT_WEAPON_PROC exist before export and execute ([#2914](https://github.com/EQEmu/Server/pull/2914)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_LANGUAGE_SKILL_UP, EVENT_SKILL_UP, or EVENT_USE_SKILL exist before export and execute ([#2894](https://github.com/EQEmu/Server/pull/2894)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_PAYLOAD or EVENT_SIGNAL exist before export and execute ([#2902](https://github.com/EQEmu/Server/pull/2902)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_SLAY exists before export and execute ([#2910](https://github.com/EQEmu/Server/pull/2910)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event EVENT_WAYPOINT_ARRIVE or EVENT_WAYPOINT_DEPART exist before export and execute ([#2905](https://github.com/EQEmu/Server/pull/2905)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_AGGRO_SAY, EVENT_SAY, and EVENT_PROXIMITY_SAY ([#2882](https://github.com/EQEmu/Server/pull/2882)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_BOT_CREATE ([#2886](https://github.com/EQEmu/Server/pull/2886)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_CLICK_DOOR and EVENT_CLICK_OBJECT ([#2880](https://github.com/EQEmu/Server/pull/2880)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_DESPAWN and EVENT_DESPAWN_ZONE ([#2887](https://github.com/EQEmu/Server/pull/2887)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_DISCOVER_ITEM ([#2912](https://github.com/EQEmu/Server/pull/2912)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_DUEL_LOSE and EVENT_DUEL_WIN ([#2915](https://github.com/EQEmu/Server/pull/2915)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_ENTER_ZONE and EVENT_ZONE ([#2900](https://github.com/EQEmu/Server/pull/2900)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_GM_COMMAND ([#2890](https://github.com/EQEmu/Server/pull/2890)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_GROUP_CHANGE ([#2884](https://github.com/EQEmu/Server/pull/2884)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_HP ([#2904](https://github.com/EQEmu/Server/pull/2904)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_KILLED_MERIT ([#2911](https://github.com/EQEmu/Server/pull/2911)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_LEVEL_UP and EVENT_LEVEL_DOWN ([#2889](https://github.com/EQEmu/Server/pull/2889)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_POPUP_RESPONSE ([#2881](https://github.com/EQEmu/Server/pull/2881)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_RESPAWN ([#2917](https://github.com/EQEmu/Server/pull/2917)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_TICK ([#2919](https://github.com/EQEmu/Server/pull/2919)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_TIMER ([#2903](https://github.com/EQEmu/Server/pull/2903)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_TRADE ([#2906](https://github.com/EQEmu/Server/pull/2906)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_UNHANDLED_OPCODE ([#2918](https://github.com/EQEmu/Server/pull/2918)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_WARP ([#2907](https://github.com/EQEmu/Server/pull/2907)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute area events ([#2888](https://github.com/EQEmu/Server/pull/2888)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check merchant events exist before export and execute ([#2893](https://github.com/EQEmu/Server/pull/2893)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check spell or cast events exist before export and execute ([#2897](https://github.com/EQEmu/Server/pull/2897)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check task events exist before export and execute ([#2883](https://github.com/EQEmu/Server/pull/2883)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_CONNECT and EVENT_DISCONNECT ([#2913](https://github.com/EQEmu/Server/pull/2913)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* (Performance) Check event exists before export and execute EVENT_TEST_BUFF ([#2920](https://github.com/EQEmu/Server/pull/2920)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Add $target export to EVENT_INSPECT in Perl ([#2891](https://github.com/EQEmu/Server/pull/2891)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Add Additional XP Events EVENT_AA_EXP_GAIN, EVENT_EXP_GAIN ([#2865](https://github.com/EQEmu/Server/pull/2865)) ([Valorith](https://github.com/Valorith)) 2023-02-13
|
||||||
|
* Add EVENT_DESTROY_ITEM_CLIENT to Perl/Lua. ([#2871](https://github.com/EQEmu/Server/pull/2871)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Add EVENT_DROP_ITEM_CLIENT to Perl/Lua ([#2869](https://github.com/EQEmu/Server/pull/2869)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Add Recipe-based methods to Perl/Lua. ([#2844](https://github.com/EQEmu/Server/pull/2844)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-08
|
||||||
|
* Export $door to EVENT_CLICKDOOR in Perl ([#2861](https://github.com/EQEmu/Server/pull/2861)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-11
|
||||||
|
* Export $hate_entity to EVENT_HATE_LIST in Perl ([#2885](https://github.com/EQEmu/Server/pull/2885)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export $item and $augment to augment events in Perl ([#2895](https://github.com/EQEmu/Server/pull/2895)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export $item and $corpse to EVENT_LOOT and EVENT_LOOT_ZONE in Perl ([#2878](https://github.com/EQEmu/Server/pull/2878)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export $item to Client/Bot Equip Events in Perl ([#2860](https://github.com/EQEmu/Server/pull/2860)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-11
|
||||||
|
* Export $item to EVENT_DISCOVER_ITEM in Perl ([#2863](https://github.com/EQEmu/Server/pull/2863)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-11
|
||||||
|
* Export $item to EVENT_PLAYER_PICKUP in Perl. ([#2875](https://github.com/EQEmu/Server/pull/2875)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export $item to Fishing and Forage Events in Perl ([#2876](https://github.com/EQEmu/Server/pull/2876)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export $killed_npc to EVENT_NPC_SLAY to Perl ([#2879](https://github.com/EQEmu/Server/pull/2879)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export $object to EVENT_CLICK_OBJECT in Perl ([#2862](https://github.com/EQEmu/Server/pull/2862)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-11
|
||||||
|
* Export $spawned to EVENT_SPAWN_ZONE in Perl ([#2877](https://github.com/EQEmu/Server/pull/2877)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export target to EVENT_TARGET_CHANGE in Perl/Lua. ([#2870](https://github.com/EQEmu/Server/pull/2870)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Export targets to EVENT_CONSIDER and EVENT_CONSIDER_CORPSE ([#2908](https://github.com/EQEmu/Server/pull/2908)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
* Fix SetSimpleRoamBox in Perl to have optional params again ([#2935](https://github.com/EQEmu/Server/pull/2935)) ([Akkadius](https://github.com/Akkadius)) 2023-02-15
|
||||||
|
|
||||||
|
### Rules
|
||||||
|
|
||||||
|
* Add Group/Raid Experience Rules ([#2850](https://github.com/EQEmu/Server/pull/2850)) ([Kinglykrab](https://github.com/Kinglykrab)) 2023-02-13
|
||||||
|
|
||||||
|
### Tradeskills
|
||||||
|
|
||||||
|
* Check if combine would result in lore conflict ([#2932](https://github.com/EQEmu/Server/pull/2932)) ([Aeadoin](https://github.com/Aeadoin)) 2023-02-16
|
||||||
|
|
||||||
|
### Windows
|
||||||
|
|
||||||
|
* Fix MSVC compilation bug via workaround ([#2926](https://github.com/EQEmu/Server/pull/2926)) ([Akkadius](https://github.com/Akkadius)) 2023-02-14
|
||||||
|
|
||||||
## [22.3.0] - 02/06/2023
|
## [22.3.0] - 02/06/2023
|
||||||
|
|
||||||
### Bots
|
### Bots
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ int main(int argc, char **argv)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
content_db.SetMysql(database.getMySQL());
|
content_db.SetMySQL(database);
|
||||||
}
|
}
|
||||||
|
|
||||||
LogSys.SetDatabase(&database)
|
LogSys.SetDatabase(&database)
|
||||||
@@ -183,7 +183,7 @@ bool SkillUsable(SharedDatabase *db, int skill_id, int class_id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
if (row[0] && atoi(row[0]) > 0) {
|
if (row[0] && Strings::ToInt(row[0]) > 0) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -207,7 +207,7 @@ int GetSkill(SharedDatabase *db, int skill_id, int class_id, int level)
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ExportSkillCaps(SharedDatabase *db)
|
void ExportSkillCaps(SharedDatabase *db)
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ int main(int argc, char **argv) {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
content_db.SetMysql(database.getMySQL());
|
content_db.SetMySQL(database);
|
||||||
}
|
}
|
||||||
|
|
||||||
LogSys.SetDatabase(&database)
|
LogSys.SetDatabase(&database)
|
||||||
@@ -241,10 +241,10 @@ void ImportSkillCaps(SharedDatabase *db) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int class_id, skill_id, level, cap;
|
int class_id, skill_id, level, cap;
|
||||||
class_id = atoi(split[0].c_str());
|
class_id = Strings::ToInt(split[0].c_str());
|
||||||
skill_id = atoi(split[1].c_str());
|
skill_id = Strings::ToInt(split[1].c_str());
|
||||||
level = atoi(split[2].c_str());
|
level = Strings::ToInt(split[2].c_str());
|
||||||
cap = atoi(split[3].c_str());
|
cap = Strings::ToInt(split[3].c_str());
|
||||||
|
|
||||||
std::string sql = StringFormat("INSERT INTO skill_caps(class, skillID, level, cap) VALUES(%d, %d, %d, %d)",
|
std::string sql = StringFormat("INSERT INTO skill_caps(class, skillID, level, cap) VALUES(%d, %d, %d, %d)",
|
||||||
class_id, skill_id, level, cap);
|
class_id, skill_id, level, cap);
|
||||||
@@ -280,16 +280,16 @@ void ImportBaseData(SharedDatabase *db) {
|
|||||||
int level, class_id;
|
int level, class_id;
|
||||||
double hp, mana, end, unk1, unk2, hp_fac, mana_fac, end_fac;
|
double hp, mana, end, unk1, unk2, hp_fac, mana_fac, end_fac;
|
||||||
|
|
||||||
level = atoi(split[0].c_str());
|
level = Strings::ToInt(split[0].c_str());
|
||||||
class_id = atoi(split[1].c_str());
|
class_id = Strings::ToInt(split[1].c_str());
|
||||||
hp = atof(split[2].c_str());
|
hp = Strings::ToFloat(split[2].c_str());
|
||||||
mana = atof(split[3].c_str());
|
mana = Strings::ToFloat(split[3].c_str());
|
||||||
end = atof(split[4].c_str());
|
end = Strings::ToFloat(split[4].c_str());
|
||||||
unk1 = atof(split[5].c_str());
|
unk1 = Strings::ToFloat(split[5].c_str());
|
||||||
unk2 = atof(split[6].c_str());
|
unk2 = Strings::ToFloat(split[6].c_str());
|
||||||
hp_fac = atof(split[7].c_str());
|
hp_fac = Strings::ToFloat(split[7].c_str());
|
||||||
mana_fac = atof(split[8].c_str());
|
mana_fac = Strings::ToFloat(split[8].c_str());
|
||||||
end_fac = atof(split[9].c_str());
|
end_fac = Strings::ToFloat(split[9].c_str());
|
||||||
|
|
||||||
sql = StringFormat("INSERT INTO base_data(level, class, hp, mana, end, unk1, unk2, hp_fac, "
|
sql = StringFormat("INSERT INTO base_data(level, class, hp, mana, end, unk1, unk2, hp_fac, "
|
||||||
"mana_fac, end_fac) VALUES(%d, %d, %f, %f, %f, %f, %f, %f, %f, %f)",
|
"mana_fac, end_fac) VALUES(%d, %d, %f, %f, %f, %f, %f, %f, %f, %f)",
|
||||||
@@ -339,8 +339,8 @@ void ImportDBStrings(SharedDatabase *db) {
|
|||||||
int id, type;
|
int id, type;
|
||||||
std::string value;
|
std::string value;
|
||||||
|
|
||||||
id = atoi(split[0].c_str());
|
id = Strings::ToInt(split[0].c_str());
|
||||||
type = atoi(split[1].c_str());
|
type = Strings::ToInt(split[1].c_str());
|
||||||
|
|
||||||
if(split.size() >= 3) {
|
if(split.size() >= 3) {
|
||||||
value = ::Strings::Escape(split[2]);
|
value = ::Strings::Escape(split[2]);
|
||||||
|
|||||||
@@ -313,7 +313,7 @@ namespace cron
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
return static_cast<cron_int>(std::stoul(text.data()));
|
return static_cast<cron_int>(Strings::ToUnsignedInt(text.data()));
|
||||||
}
|
}
|
||||||
catch (std::exception const & ex)
|
catch (std::exception const & ex)
|
||||||
{
|
{
|
||||||
|
|||||||
+64
-64
@@ -121,10 +121,10 @@ uint32 Database::CheckLogin(const char* name, const char* password, const char *
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
auto id = std::stoul(row[0]);
|
auto id = Strings::ToUnsignedInt(row[0]);
|
||||||
|
|
||||||
if (oStatus) {
|
if (oStatus) {
|
||||||
*oStatus = std::stoi(row[1]);
|
*oStatus = Strings::ToInt(row[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return id;
|
return id;
|
||||||
@@ -202,11 +202,11 @@ int16 Database::CheckStatus(uint32 account_id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
int16 status = std::stoi(row[0]);
|
int16 status = Strings::ToInt(row[0]);
|
||||||
int32 date_diff = 0;
|
int32 date_diff = 0;
|
||||||
|
|
||||||
if (row[1]) {
|
if (row[1]) {
|
||||||
date_diff = std::stoi(row[1]);
|
date_diff = Strings::ToInt(row[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (date_diff > 0) {
|
if (date_diff > 0) {
|
||||||
@@ -345,7 +345,7 @@ bool Database::ReserveName(uint32 account_id, char* name) {
|
|||||||
std::string query = StringFormat("SELECT `account_id`, `name` FROM `character_data` WHERE `name` = '%s'", name);
|
std::string query = StringFormat("SELECT `account_id`, `name` FROM `character_data` WHERE `name` = '%s'", name);
|
||||||
auto results = QueryDatabase(query);
|
auto results = QueryDatabase(query);
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
if (row[0] && atoi(row[0]) > 0){
|
if (row[0] && Strings::ToInt(row[0]) > 0){
|
||||||
LogInfo("Account: [{}] tried to request name: [{}], but it is already taken", account_id, name);
|
LogInfo("Account: [{}] tried to request name: [{}], but it is already taken", account_id, name);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -387,7 +387,7 @@ bool Database::DeleteCharacter(char *character_name)
|
|||||||
std::string query = StringFormat("SELECT `id` from `character_data` WHERE `name` = '%s'", character_name);
|
std::string query = StringFormat("SELECT `id` from `character_data` WHERE `name` = '%s'", character_name);
|
||||||
auto results = QueryDatabase(query);
|
auto results = QueryDatabase(query);
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
character_id = atoi(row[0]);
|
character_id = Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (character_id <= 0) {
|
if (character_id <= 0) {
|
||||||
@@ -787,7 +787,7 @@ uint32 Database::GetCharacterID(const char *name) {
|
|||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
if (results.RowCount() == 1)
|
if (results.RowCount() == 1)
|
||||||
{
|
{
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -812,10 +812,10 @@ uint32 Database::GetAccountIDByChar(const char* charname, uint32* oCharID) {
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
uint32 accountId = atoi(row[0]);
|
uint32 accountId = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
if (oCharID)
|
if (oCharID)
|
||||||
*oCharID = atoi(row[1]);
|
*oCharID = Strings::ToInt(row[1]);
|
||||||
|
|
||||||
return accountId;
|
return accountId;
|
||||||
}
|
}
|
||||||
@@ -832,7 +832,7 @@ uint32 Database::GetAccountIDByChar(uint32 char_id) {
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32 Database::GetAccountIDByName(std::string account_name, std::string loginserver, int16* status, uint32* lsid) {
|
uint32 Database::GetAccountIDByName(std::string account_name, std::string loginserver, int16* status, uint32* lsid) {
|
||||||
@@ -852,14 +852,14 @@ uint32 Database::GetAccountIDByName(std::string account_name, std::string logins
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
auto account_id = std::stoul(row[0]);
|
auto account_id = Strings::ToUnsignedInt(row[0]);
|
||||||
|
|
||||||
if (status) {
|
if (status) {
|
||||||
*status = static_cast<int16>(std::stoi(row[1]));
|
*status = static_cast<int16>(Strings::ToInt(row[1]));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (lsid) {
|
if (lsid) {
|
||||||
*lsid = row[2] ? std::stoul(row[2]) : 0;
|
*lsid = row[2] ? Strings::ToUnsignedInt(row[2]) : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return account_id;
|
return account_id;
|
||||||
@@ -880,7 +880,7 @@ void Database::GetAccountName(uint32 accountid, char* name, uint32* oLSAccountID
|
|||||||
|
|
||||||
strcpy(name, row[0]);
|
strcpy(name, row[0]);
|
||||||
if (row[1] && oLSAccountID) {
|
if (row[1] && oLSAccountID) {
|
||||||
*oLSAccountID = atoi(row[1]);
|
*oLSAccountID = Strings::ToInt(row[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -968,7 +968,7 @@ bool Database::LoadVariables() {
|
|||||||
|
|
||||||
std::string key, value;
|
std::string key, value;
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
varcache.last_update = atoi(row[2]); // ahh should we be comparing if this is newer?
|
varcache.last_update = Strings::ToInt(row[2]); // ahh should we be comparing if this is newer?
|
||||||
key = row[0];
|
key = row[0];
|
||||||
value = row[1];
|
value = row[1];
|
||||||
std::transform(std::begin(key), std::end(key), std::begin(key), ::tolower); // keys are lower case, DB doesn't have to be
|
std::transform(std::begin(key), std::end(key), std::begin(key), ::tolower); // keys are lower case, DB doesn't have to be
|
||||||
@@ -1052,15 +1052,15 @@ bool Database::GetZoneGraveyard(const uint32 graveyard_id, uint32* graveyard_zon
|
|||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
if(graveyard_zoneid != nullptr)
|
if(graveyard_zoneid != nullptr)
|
||||||
*graveyard_zoneid = atoi(row[0]);
|
*graveyard_zoneid = Strings::ToInt(row[0]);
|
||||||
if(graveyard_x != nullptr)
|
if(graveyard_x != nullptr)
|
||||||
*graveyard_x = atof(row[1]);
|
*graveyard_x = Strings::ToFloat(row[1]);
|
||||||
if(graveyard_y != nullptr)
|
if(graveyard_y != nullptr)
|
||||||
*graveyard_y = atof(row[2]);
|
*graveyard_y = Strings::ToFloat(row[2]);
|
||||||
if(graveyard_z != nullptr)
|
if(graveyard_z != nullptr)
|
||||||
*graveyard_z = atof(row[3]);
|
*graveyard_z = Strings::ToFloat(row[3]);
|
||||||
if(graveyard_heading != nullptr)
|
if(graveyard_heading != nullptr)
|
||||||
*graveyard_heading = atof(row[4]);
|
*graveyard_heading = Strings::ToFloat(row[4]);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -1168,13 +1168,13 @@ uint32 Database::GetAccountIDFromLSID(
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
account_id = std::stoi(row[0]);
|
account_id = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
if (in_account_name) {
|
if (in_account_name) {
|
||||||
strcpy(in_account_name, row[1]);
|
strcpy(in_account_name, row[1]);
|
||||||
}
|
}
|
||||||
if (in_status) {
|
if (in_status) {
|
||||||
*in_status = std::stoi(row[2]);
|
*in_status = Strings::ToInt(row[2]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1198,7 +1198,7 @@ void Database::GetAccountFromID(uint32 id, char* oAccountName, int16* oStatus) {
|
|||||||
if (oAccountName)
|
if (oAccountName)
|
||||||
strcpy(oAccountName, row[0]);
|
strcpy(oAccountName, row[0]);
|
||||||
if (oStatus)
|
if (oStatus)
|
||||||
*oStatus = atoi(row[1]);
|
*oStatus = Strings::ToInt(row[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Database::ClearMerchantTemp(){
|
void Database::ClearMerchantTemp(){
|
||||||
@@ -1244,7 +1244,7 @@ uint8 Database::GetServerType() {
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Database::MoveCharacterToZone(uint32 character_id, uint32 zone_id)
|
bool Database::MoveCharacterToZone(uint32 character_id, uint32 zone_id)
|
||||||
@@ -1296,7 +1296,7 @@ uint8 Database::GetRaceSkill(uint8 skillid, uint8 in_race)
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8 Database::GetSkillCap(uint8 skillid, uint8 in_race, uint8 in_class, uint16 in_level)
|
uint8 Database::GetSkillCap(uint8 skillid, uint8 in_race, uint8 in_class, uint16 in_level)
|
||||||
@@ -1312,12 +1312,12 @@ uint8 Database::GetSkillCap(uint8 skillid, uint8 in_race, uint8 in_class, uint16
|
|||||||
if (results.Success() && results.RowsAffected() != 0)
|
if (results.Success() && results.RowsAffected() != 0)
|
||||||
{
|
{
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
skill_level = atoi(row[0]);
|
skill_level = Strings::ToInt(row[0]);
|
||||||
skill_formula = atoi(row[1]);
|
skill_formula = Strings::ToInt(row[1]);
|
||||||
skill_cap = atoi(row[2]);
|
skill_cap = Strings::ToInt(row[2]);
|
||||||
if (atoi(row[3]) > skill_cap)
|
if (Strings::ToInt(row[3]) > skill_cap)
|
||||||
skill_cap2 = (atoi(row[3])-skill_cap)/10; //Split the post-50 skill cap into difference between pre-50 cap and post-50 cap / 10 to determine amount of points per level.
|
skill_cap2 = (Strings::ToInt(row[3])-skill_cap)/10; //Split the post-50 skill cap into difference between pre-50 cap and post-50 cap / 10 to determine amount of points per level.
|
||||||
skill_cap3 = atoi(row[4]);
|
skill_cap3 = Strings::ToInt(row[4]);
|
||||||
}
|
}
|
||||||
|
|
||||||
int race_skill = GetRaceSkill(skillid,in_race);
|
int race_skill = GetRaceSkill(skillid,in_race);
|
||||||
@@ -1362,10 +1362,10 @@ uint32 Database::GetCharacterInfo(std::string character_name, uint32 *account_id
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
auto character_id = std::stoul(row[0]);
|
auto character_id = Strings::ToUnsignedInt(row[0]);
|
||||||
*account_id = std::stoul(row[1]);
|
*account_id = Strings::ToUnsignedInt(row[1]);
|
||||||
*zone_id = std::stoul(row[2]);
|
*zone_id = Strings::ToUnsignedInt(row[2]);
|
||||||
*instance_id = std::stoul(row[3]);
|
*instance_id = Strings::ToUnsignedInt(row[3]);
|
||||||
|
|
||||||
return character_id;
|
return character_id;
|
||||||
}
|
}
|
||||||
@@ -1488,7 +1488,7 @@ uint32 Database::GetGroupID(const char* name){
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string Database::GetGroupLeaderForLogin(std::string character_name) {
|
std::string Database::GetGroupLeaderForLogin(std::string character_name) {
|
||||||
@@ -1502,7 +1502,7 @@ std::string Database::GetGroupLeaderForLogin(std::string character_name) {
|
|||||||
|
|
||||||
if (results.Success() && results.RowCount()) {
|
if (results.Success() && results.RowCount()) {
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
group_id = std::stoul(row[0]);
|
group_id = Strings::ToUnsignedInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!group_id) {
|
if (!group_id) {
|
||||||
@@ -1591,7 +1591,7 @@ char *Database::GetGroupLeadershipInfo(uint32 gid, char* leaderbuf, char* mainta
|
|||||||
strcpy(mentoree, row[5]);
|
strcpy(mentoree, row[5]);
|
||||||
|
|
||||||
if (mentor_percent)
|
if (mentor_percent)
|
||||||
*mentor_percent = atoi(row[6]);
|
*mentor_percent = Strings::ToInt(row[6]);
|
||||||
|
|
||||||
if(GLAA && results.LengthOfColumn(7) == sizeof(GroupLeadershipAA_Struct))
|
if(GLAA && results.LengthOfColumn(7) == sizeof(GroupLeadershipAA_Struct))
|
||||||
memcpy(GLAA, row[7], sizeof(GroupLeadershipAA_Struct));
|
memcpy(GLAA, row[7], sizeof(GroupLeadershipAA_Struct));
|
||||||
@@ -1638,7 +1638,7 @@ uint8 Database::GetAgreementFlag(uint32 acctid) {
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Database::SetAgreementFlag(uint32 acctid) {
|
void Database::SetAgreementFlag(uint32 acctid) {
|
||||||
@@ -1724,7 +1724,7 @@ uint32 Database::GetRaidID(const char* name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (row[0]) // would it ever be possible to have a null here?
|
if (row[0]) // would it ever be possible to have a null here?
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -1807,7 +1807,7 @@ void Database::GetGroupLeadershipInfo(uint32 gid, uint32 rid, char *maintank,
|
|||||||
strcpy(mentoree, row[4]);
|
strcpy(mentoree, row[4]);
|
||||||
|
|
||||||
if (mentor_percent)
|
if (mentor_percent)
|
||||||
*mentor_percent = atoi(row[5]);
|
*mentor_percent = Strings::ToInt(row[5]);
|
||||||
|
|
||||||
if (GLAA && results.LengthOfColumn(6) == sizeof(GroupLeadershipAA_Struct))
|
if (GLAA && results.LengthOfColumn(6) == sizeof(GroupLeadershipAA_Struct))
|
||||||
memcpy(GLAA, row[6], sizeof(GroupLeadershipAA_Struct));
|
memcpy(GLAA, row[6], sizeof(GroupLeadershipAA_Struct));
|
||||||
@@ -1980,16 +1980,16 @@ bool Database::GetAdventureStats(uint32 char_id, AdventureStats_Struct *as)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
as->success.guk = atoi(row[0]);
|
as->success.guk = Strings::ToInt(row[0]);
|
||||||
as->success.mir = atoi(row[1]);
|
as->success.mir = Strings::ToInt(row[1]);
|
||||||
as->success.mmc = atoi(row[2]);
|
as->success.mmc = Strings::ToInt(row[2]);
|
||||||
as->success.ruj = atoi(row[3]);
|
as->success.ruj = Strings::ToInt(row[3]);
|
||||||
as->success.tak = atoi(row[4]);
|
as->success.tak = Strings::ToInt(row[4]);
|
||||||
as->failure.guk = atoi(row[5]);
|
as->failure.guk = Strings::ToInt(row[5]);
|
||||||
as->failure.mir = atoi(row[6]);
|
as->failure.mir = Strings::ToInt(row[6]);
|
||||||
as->failure.mmc = atoi(row[7]);
|
as->failure.mmc = Strings::ToInt(row[7]);
|
||||||
as->failure.ruj = atoi(row[8]);
|
as->failure.ruj = Strings::ToInt(row[8]);
|
||||||
as->failure.tak = atoi(row[9]);
|
as->failure.tak = Strings::ToInt(row[9]);
|
||||||
as->failure.total = as->failure.guk + as->failure.mir + as->failure.mmc + as->failure.ruj + as->failure.tak;
|
as->failure.total = as->failure.guk + as->failure.mir + as->failure.mmc + as->failure.ruj + as->failure.tak;
|
||||||
as->success.total = as->success.guk + as->success.mir + as->success.mmc + as->success.ruj + as->success.tak;
|
as->success.total = as->success.guk + as->success.mir + as->success.mmc + as->success.ruj + as->success.tak;
|
||||||
|
|
||||||
@@ -2008,7 +2008,7 @@ uint32 Database::GetGuildIDByCharID(uint32 character_id)
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32 Database::GetGroupIDByCharID(uint32 character_id)
|
uint32 Database::GetGroupIDByCharID(uint32 character_id)
|
||||||
@@ -2030,7 +2030,7 @@ uint32 Database::GetGroupIDByCharID(uint32 character_id)
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
uint32 Database::GetRaidIDByCharID(uint32 character_id) {
|
uint32 Database::GetRaidIDByCharID(uint32 character_id) {
|
||||||
@@ -2044,7 +2044,7 @@ uint32 Database::GetRaidIDByCharID(uint32 character_id) {
|
|||||||
);
|
);
|
||||||
auto results = QueryDatabase(query);
|
auto results = QueryDatabase(query);
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -2058,7 +2058,7 @@ int Database::CountInvSnapshots() {
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
int64 count = atoll(row[0]);
|
int64 count = Strings::ToBigInt(row[0]);
|
||||||
if (count > 2147483647)
|
if (count > 2147483647)
|
||||||
return -2;
|
return -2;
|
||||||
if (count < 0)
|
if (count < 0)
|
||||||
@@ -2094,12 +2094,12 @@ struct TimeOfDay_Struct Database::LoadTime(time_t &realtime)
|
|||||||
else{
|
else{
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
eqTime.minute = atoi(row[0]);
|
eqTime.minute = Strings::ToInt(row[0]);
|
||||||
eqTime.hour = atoi(row[1]);
|
eqTime.hour = Strings::ToInt(row[1]);
|
||||||
eqTime.day = atoi(row[2]);
|
eqTime.day = Strings::ToInt(row[2]);
|
||||||
eqTime.month = atoi(row[3]);
|
eqTime.month = Strings::ToInt(row[3]);
|
||||||
eqTime.year = atoi(row[4]);
|
eqTime.year = Strings::ToInt(row[4]);
|
||||||
realtime = atoi(row[5]);
|
realtime = Strings::ToInt(row[5]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return eqTime;
|
return eqTime;
|
||||||
@@ -2126,7 +2126,7 @@ int Database::GetIPExemption(std::string account_ip) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return std::stoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Database::SetIPExemption(std::string account_ip, int exemption_amount) {
|
void Database::SetIPExemption(std::string account_ip, int exemption_amount) {
|
||||||
@@ -2140,7 +2140,7 @@ void Database::SetIPExemption(std::string account_ip, int exemption_amount) {
|
|||||||
auto results = QueryDatabase(query);
|
auto results = QueryDatabase(query);
|
||||||
if (results.Success() && results.RowCount()) {
|
if (results.Success() && results.RowCount()) {
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
exemption_id = std::stoul(row[0]);
|
exemption_id = Strings::ToUnsignedInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
query = fmt::format(
|
query = fmt::format(
|
||||||
@@ -2166,7 +2166,7 @@ int Database::GetInstanceID(uint32 char_id, uint32 zone_id) {
|
|||||||
|
|
||||||
if (results.Success() && results.RowCount() > 0) {
|
if (results.Success() && results.RowCount() > 0) {
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);;
|
return Strings::ToInt(row[0]);;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@@ -34,8 +34,6 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
//atoi is not uint32 or uint32 safe!!!!
|
|
||||||
#define atoul(str) strtoul(str, nullptr, 10)
|
|
||||||
|
|
||||||
class MySQLRequestResult;
|
class MySQLRequestResult;
|
||||||
class Client;
|
class Client;
|
||||||
|
|||||||
@@ -530,7 +530,7 @@ bool Database::CheckDatabaseConvertPPDeblob(){
|
|||||||
rquery = StringFormat("SELECT COUNT(`id`) FROM `character_`");
|
rquery = StringFormat("SELECT COUNT(`id`) FROM `character_`");
|
||||||
results = QueryDatabase(rquery);
|
results = QueryDatabase(rquery);
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
number_of_characters = atoi(row[0]);
|
number_of_characters = Strings::ToInt(row[0]);
|
||||||
printf("Number of Characters in Database: %i \n", number_of_characters);
|
printf("Number of Characters in Database: %i \n", number_of_characters);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -929,19 +929,19 @@ bool Database::CheckDatabaseConvertPPDeblob(){
|
|||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
char_iter_count++;
|
char_iter_count++;
|
||||||
squery = StringFormat("SELECT `id`, `profile`, `name`, `level`, `account_id`, `firstlogon`, `lfg`, `lfp`, `mailkey`, `xtargets`, `inspectmessage`, `extprofile` FROM `character_` WHERE `id` = %i", atoi(row[0]));
|
squery = StringFormat("SELECT `id`, `profile`, `name`, `level`, `account_id`, `firstlogon`, `lfg`, `lfp`, `mailkey`, `xtargets`, `inspectmessage`, `extprofile` FROM `character_` WHERE `id` = %i", Strings::ToInt(row[0]));
|
||||||
auto results2 = QueryDatabase(squery);
|
auto results2 = QueryDatabase(squery);
|
||||||
auto row2 = results2.begin();
|
auto row2 = results2.begin();
|
||||||
pp = (Convert::PlayerProfile_Struct*)row2[1];
|
pp = (Convert::PlayerProfile_Struct*)row2[1];
|
||||||
e_pp = (ExtendedProfile_Struct*)row2[11];
|
e_pp = (ExtendedProfile_Struct*)row2[11];
|
||||||
character_id = atoi(row[0]);
|
character_id = Strings::ToInt(row[0]);
|
||||||
account_id = atoi(row2[4]);
|
account_id = Strings::ToInt(row2[4]);
|
||||||
/* Convert some data from the character_ table that is still relevant */
|
/* Convert some data from the character_ table that is still relevant */
|
||||||
firstlogon = atoi(row2[5]);
|
firstlogon = Strings::ToInt(row2[5]);
|
||||||
lfg = atoi(row2[6]);
|
lfg = Strings::ToInt(row2[6]);
|
||||||
lfp = atoi(row2[7]);
|
lfp = Strings::ToInt(row2[7]);
|
||||||
mailkey = row2[8];
|
mailkey = row2[8];
|
||||||
xtargets = atoi(row2[9]);
|
xtargets = Strings::ToInt(row2[9]);
|
||||||
inspectmessage = row2[10];
|
inspectmessage = row2[10];
|
||||||
|
|
||||||
/* Verify PP Integrity */
|
/* Verify PP Integrity */
|
||||||
@@ -1567,7 +1567,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
rquery = StringFormat("SELECT DISTINCT charid FROM character_corpses");
|
rquery = StringFormat("SELECT DISTINCT charid FROM character_corpses");
|
||||||
results = QueryDatabase(rquery);
|
results = QueryDatabase(rquery);
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
std::string squery = StringFormat("SELECT id, charname, data, time_of_death, is_rezzed FROM character_corpses WHERE `charid` = %i", atoi(row[0]));
|
std::string squery = StringFormat("SELECT id, charname, data, time_of_death, is_rezzed FROM character_corpses WHERE `charid` = %i", Strings::ToInt(row[0]));
|
||||||
auto results2 = QueryDatabase(squery);
|
auto results2 = QueryDatabase(squery);
|
||||||
for (auto row2 = results2.begin(); row2 != results2.end(); ++row2) {
|
for (auto row2 = results2.begin(); row2 != results2.end(); ++row2) {
|
||||||
in_datasize = results2.LengthOfColumn(2);
|
in_datasize = results2.LengthOfColumn(2);
|
||||||
@@ -1599,7 +1599,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
c_type = "NULL";
|
c_type = "NULL";
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
std::cout << "Converting Corpse: [OK] [" << c_type << "]: " << "ID: " << atoi(row2[0]) << std::endl;
|
std::cout << "Converting Corpse: [OK] [" << c_type << "]: " << "ID: " << Strings::ToInt(row2[0]) << std::endl;
|
||||||
|
|
||||||
if (is_sof){
|
if (is_sof){
|
||||||
scquery = StringFormat("UPDATE `character_corpses` SET \n"
|
scquery = StringFormat("UPDATE `character_corpses` SET \n"
|
||||||
@@ -1670,7 +1670,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
dbpc->item_tint[6].color,
|
dbpc->item_tint[6].color,
|
||||||
dbpc->item_tint[7].color,
|
dbpc->item_tint[7].color,
|
||||||
dbpc->item_tint[8].color,
|
dbpc->item_tint[8].color,
|
||||||
atoi(row2[0])
|
Strings::ToInt(row2[0])
|
||||||
);
|
);
|
||||||
if (scquery != ""){ auto sc_results = QueryDatabase(scquery); }
|
if (scquery != ""){ auto sc_results = QueryDatabase(scquery); }
|
||||||
|
|
||||||
@@ -1682,7 +1682,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
scquery = StringFormat("REPLACE INTO `character_corpse_items` \n"
|
scquery = StringFormat("REPLACE INTO `character_corpse_items` \n"
|
||||||
" (corpse_id, equip_slot, item_id, charges, aug_1, aug_2, aug_3, aug_4, aug_5, aug_6, attuned) \n"
|
" (corpse_id, equip_slot, item_id, charges, aug_1, aug_2, aug_3, aug_4, aug_5, aug_6, attuned) \n"
|
||||||
" VALUES (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
" VALUES (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
||||||
atoi(row2[0]),
|
Strings::ToInt(row2[0]),
|
||||||
dbpc->items[i].equipSlot,
|
dbpc->items[i].equipSlot,
|
||||||
dbpc->items[i].item_id,
|
dbpc->items[i].item_id,
|
||||||
dbpc->items[i].charges,
|
dbpc->items[i].charges,
|
||||||
@@ -1698,7 +1698,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
scquery = scquery + StringFormat(", (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
scquery = scquery + StringFormat(", (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
||||||
atoi(row2[0]),
|
Strings::ToInt(row2[0]),
|
||||||
dbpc->items[i].equipSlot,
|
dbpc->items[i].equipSlot,
|
||||||
dbpc->items[i].item_id,
|
dbpc->items[i].item_id,
|
||||||
dbpc->items[i].charges,
|
dbpc->items[i].charges,
|
||||||
@@ -1778,7 +1778,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
dbpc_c->item_tint[6].color,
|
dbpc_c->item_tint[6].color,
|
||||||
dbpc_c->item_tint[7].color,
|
dbpc_c->item_tint[7].color,
|
||||||
dbpc_c->item_tint[8].color,
|
dbpc_c->item_tint[8].color,
|
||||||
atoi(row2[0])
|
Strings::ToInt(row2[0])
|
||||||
);
|
);
|
||||||
if (scquery != ""){ auto sc_results = QueryDatabase(scquery); }
|
if (scquery != ""){ auto sc_results = QueryDatabase(scquery); }
|
||||||
|
|
||||||
@@ -1791,7 +1791,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
scquery = StringFormat("REPLACE INTO `character_corpse_items` \n"
|
scquery = StringFormat("REPLACE INTO `character_corpse_items` \n"
|
||||||
" (corpse_id, equip_slot, item_id, charges, aug_1, aug_2, aug_3, aug_4, aug_5, aug_6, attuned) \n"
|
" (corpse_id, equip_slot, item_id, charges, aug_1, aug_2, aug_3, aug_4, aug_5, aug_6, attuned) \n"
|
||||||
" VALUES (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
" VALUES (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
||||||
atoi(row2[0]),
|
Strings::ToInt(row2[0]),
|
||||||
dbpc_c->items[i].equipSlot,
|
dbpc_c->items[i].equipSlot,
|
||||||
dbpc_c->items[i].item_id,
|
dbpc_c->items[i].item_id,
|
||||||
dbpc_c->items[i].charges,
|
dbpc_c->items[i].charges,
|
||||||
@@ -1807,7 +1807,7 @@ bool Database::CheckDatabaseConvertCorpseDeblob(){
|
|||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
scquery = scquery + StringFormat(", (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
scquery = scquery + StringFormat(", (%u, %u, %u, %u, %u, %u, %u, %u, %u, %u, %u) \n",
|
||||||
atoi(row2[0]),
|
Strings::ToInt(row2[0]),
|
||||||
dbpc_c->items[i].equipSlot,
|
dbpc_c->items[i].equipSlot,
|
||||||
dbpc_c->items[i].item_id,
|
dbpc_c->items[i].item_id,
|
||||||
dbpc_c->items[i].charges,
|
dbpc_c->items[i].charges,
|
||||||
|
|||||||
@@ -167,8 +167,8 @@ bool Database::GetUnusedInstanceID(uint16 &instance_id)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
if (atoi(row[0]) <= max) {
|
if (Strings::ToInt(row[0]) <= max) {
|
||||||
instance_id = atoi(row[0]);
|
instance_id = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -194,7 +194,7 @@ bool Database::GetUnusedInstanceID(uint16 &instance_id)
|
|||||||
max_reserved_instance_id++;
|
max_reserved_instance_id++;
|
||||||
|
|
||||||
for (auto row : results) {
|
for (auto row : results) {
|
||||||
if (max_reserved_instance_id < std::stoul(row[0])) {
|
if (max_reserved_instance_id < Strings::ToUnsignedInt(row[0])) {
|
||||||
instance_id = max_reserved_instance_id;
|
instance_id = max_reserved_instance_id;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -301,7 +301,7 @@ uint16 Database::GetInstanceID(uint32 zone_id, uint32 character_id, int16 versio
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
return static_cast<uint16>(std::stoul(row[0]));
|
return static_cast<uint16>(Strings::ToUnsignedInt(row[0]));
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<uint16> Database::GetInstanceIDs(uint32 zone_id, uint32 character_id)
|
std::vector<uint16> Database::GetInstanceIDs(uint32 zone_id, uint32 character_id)
|
||||||
@@ -328,7 +328,7 @@ std::vector<uint16> Database::GetInstanceIDs(uint32 zone_id, uint32 character_id
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (auto row : results) {
|
for (auto row : results) {
|
||||||
l.push_back(static_cast<uint16>(std::stoul(row[0])));
|
l.push_back(static_cast<uint16>(Strings::ToUnsignedInt(row[0])));
|
||||||
}
|
}
|
||||||
|
|
||||||
return l;
|
return l;
|
||||||
@@ -409,7 +409,7 @@ void Database::AssignRaidToInstance(uint32 raid_id, uint32 instance_id)
|
|||||||
auto zone_id = GetInstanceZoneID(instance_id);
|
auto zone_id = GetInstanceZoneID(instance_id);
|
||||||
auto version = GetInstanceVersion(instance_id);
|
auto version = GetInstanceVersion(instance_id);
|
||||||
|
|
||||||
auto l = GroupIdRepository::GetWhere(
|
auto l = RaidMembersRepository::GetWhere(
|
||||||
*this,
|
*this,
|
||||||
fmt::format(
|
fmt::format(
|
||||||
"raidid = {}",
|
"raidid = {}",
|
||||||
|
|||||||
@@ -342,7 +342,7 @@ namespace DatabaseSchema {
|
|||||||
"saylink",
|
"saylink",
|
||||||
"server_scheduled_events",
|
"server_scheduled_events",
|
||||||
"player_event_log_settings",
|
"player_event_log_settings",
|
||||||
"player_event_logs"
|
"player_event_logs",
|
||||||
"shared_task_activity_state",
|
"shared_task_activity_state",
|
||||||
"shared_task_dynamic_zones",
|
"shared_task_dynamic_zones",
|
||||||
"shared_task_members",
|
"shared_task_members",
|
||||||
|
|||||||
+47
-41
@@ -34,7 +34,8 @@
|
|||||||
|
|
||||||
DBcore::DBcore()
|
DBcore::DBcore()
|
||||||
{
|
{
|
||||||
mysql_init(&mysql);
|
mysql = mysql_init(nullptr);
|
||||||
|
mysqlOwner = true;
|
||||||
pHost = nullptr;
|
pHost = nullptr;
|
||||||
pUser = nullptr;
|
pUser = nullptr;
|
||||||
pPassword = nullptr;
|
pPassword = nullptr;
|
||||||
@@ -42,6 +43,7 @@ DBcore::DBcore()
|
|||||||
pCompress = false;
|
pCompress = false;
|
||||||
pSSL = false;
|
pSSL = false;
|
||||||
pStatus = Closed;
|
pStatus = Closed;
|
||||||
|
m_mutex = new Mutex;
|
||||||
}
|
}
|
||||||
|
|
||||||
DBcore::~DBcore()
|
DBcore::~DBcore()
|
||||||
@@ -51,16 +53,10 @@ DBcore::~DBcore()
|
|||||||
* are re-using the default database connection pointer when we dont have an
|
* are re-using the default database connection pointer when we dont have an
|
||||||
* external configuration setup ex: (content_database)
|
* external configuration setup ex: (content_database)
|
||||||
*/
|
*/
|
||||||
std::string mysql_connection_host;
|
if (mysqlOwner) {
|
||||||
if (mysql.host) {
|
mysql_close(mysql);
|
||||||
mysql_connection_host = mysql.host;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GetOriginHost() != mysql_connection_host) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
mysql_close(&mysql);
|
|
||||||
safe_delete_array(pHost);
|
safe_delete_array(pHost);
|
||||||
safe_delete_array(pUser);
|
safe_delete_array(pUser);
|
||||||
safe_delete_array(pPassword);
|
safe_delete_array(pPassword);
|
||||||
@@ -70,17 +66,18 @@ DBcore::~DBcore()
|
|||||||
// Sends the MySQL server a keepalive
|
// Sends the MySQL server a keepalive
|
||||||
void DBcore::ping()
|
void DBcore::ping()
|
||||||
{
|
{
|
||||||
if (!MDatabase.trylock()) {
|
if (!m_mutex->trylock()) {
|
||||||
// well, if's it's locked, someone's using it. If someone's using it, it doesnt need a keepalive
|
// well, if's it's locked, someone's using it. If someone's using it, it doesnt need a keepalive
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
mysql_ping(&mysql);
|
mysql_ping(mysql);
|
||||||
MDatabase.unlock();
|
m_mutex->unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
MySQLRequestResult DBcore::QueryDatabase(std::string query, bool retryOnFailureOnce)
|
MySQLRequestResult DBcore::QueryDatabase(std::string query, bool retryOnFailureOnce)
|
||||||
{
|
{
|
||||||
return QueryDatabase(query.c_str(), query.length(), retryOnFailureOnce);
|
auto r = QueryDatabase(query.c_str(), query.length(), retryOnFailureOnce);
|
||||||
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DBcore::DoesTableExist(std::string table_name)
|
bool DBcore::DoesTableExist(std::string table_name)
|
||||||
@@ -95,18 +92,16 @@ MySQLRequestResult DBcore::QueryDatabase(const char *query, uint32 querylen, boo
|
|||||||
BenchTimer timer;
|
BenchTimer timer;
|
||||||
timer.reset();
|
timer.reset();
|
||||||
|
|
||||||
LockMutex lock(&MDatabase);
|
LockMutex lock(m_mutex);
|
||||||
|
|
||||||
// Reconnect if we are not connected before hand.
|
// Reconnect if we are not connected before hand.
|
||||||
if (pStatus != Connected) {
|
if (pStatus != Connected) {
|
||||||
Open();
|
Open();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// request query. != 0 indicates some kind of error.
|
// request query. != 0 indicates some kind of error.
|
||||||
if (mysql_real_query(&mysql, query, querylen) != 0) {
|
if (mysql_real_query(mysql, query, querylen) != 0) {
|
||||||
unsigned int errorNumber = mysql_errno(&mysql);
|
unsigned int errorNumber = mysql_errno(mysql);
|
||||||
|
|
||||||
if (errorNumber == CR_SERVER_GONE_ERROR) {
|
if (errorNumber == CR_SERVER_GONE_ERROR) {
|
||||||
pStatus = Error;
|
pStatus = Error;
|
||||||
@@ -130,26 +125,26 @@ MySQLRequestResult DBcore::QueryDatabase(const char *query, uint32 querylen, boo
|
|||||||
|
|
||||||
auto errorBuffer = new char[MYSQL_ERRMSG_SIZE];
|
auto errorBuffer = new char[MYSQL_ERRMSG_SIZE];
|
||||||
|
|
||||||
snprintf(errorBuffer, MYSQL_ERRMSG_SIZE, "#%i: %s", mysql_errno(&mysql), mysql_error(&mysql));
|
snprintf(errorBuffer, MYSQL_ERRMSG_SIZE, "#%i: %s", mysql_errno(mysql), mysql_error(mysql));
|
||||||
|
|
||||||
return MySQLRequestResult(nullptr, 0, 0, 0, 0, (uint32) mysql_errno(&mysql), errorBuffer);
|
return MySQLRequestResult(nullptr, 0, 0, 0, 0, (uint32) mysql_errno(mysql), errorBuffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
auto errorBuffer = new char[MYSQL_ERRMSG_SIZE];
|
auto errorBuffer = new char[MYSQL_ERRMSG_SIZE];
|
||||||
snprintf(errorBuffer, MYSQL_ERRMSG_SIZE, "#%i: %s", mysql_errno(&mysql), mysql_error(&mysql));
|
snprintf(errorBuffer, MYSQL_ERRMSG_SIZE, "#%i: %s", mysql_errno(mysql), mysql_error(mysql));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Error logging
|
* Error logging
|
||||||
*/
|
*/
|
||||||
if (mysql_errno(&mysql) > 0 && strlen(query) > 0) {
|
if (mysql_errno(mysql) > 0 && strlen(query) > 0) {
|
||||||
LogMySQLError("[{}] [{}]\n[{}]", mysql_errno(&mysql), mysql_error(&mysql), query);
|
LogMySQLError("[{}] [{}]\n[{}]", mysql_errno(mysql), mysql_error(mysql), query);
|
||||||
}
|
}
|
||||||
|
|
||||||
return MySQLRequestResult(nullptr, 0, 0, 0, 0, mysql_errno(&mysql), errorBuffer);
|
return MySQLRequestResult(nullptr, 0, 0, 0, 0, mysql_errno(mysql), errorBuffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
// successful query. get results.
|
// successful query. get results.
|
||||||
MYSQL_RES *res = mysql_store_result(&mysql);
|
MYSQL_RES *res = mysql_store_result(mysql);
|
||||||
uint32 rowCount = 0;
|
uint32 rowCount = 0;
|
||||||
|
|
||||||
if (res != nullptr) {
|
if (res != nullptr) {
|
||||||
@@ -158,10 +153,10 @@ MySQLRequestResult DBcore::QueryDatabase(const char *query, uint32 querylen, boo
|
|||||||
|
|
||||||
MySQLRequestResult requestResult(
|
MySQLRequestResult requestResult(
|
||||||
res,
|
res,
|
||||||
(uint32) mysql_affected_rows(&mysql),
|
(uint32) mysql_affected_rows(mysql),
|
||||||
rowCount,
|
rowCount,
|
||||||
(uint32) mysql_field_count(&mysql),
|
(uint32) mysql_field_count(mysql),
|
||||||
(uint32) mysql_insert_id(&mysql)
|
(uint32) mysql_insert_id(mysql)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (LogSys.log_settings[Logs::MySQLQuery].is_category_enabled == 1) {
|
if (LogSys.log_settings[Logs::MySQLQuery].is_category_enabled == 1) {
|
||||||
@@ -207,7 +202,7 @@ uint32 DBcore::DoEscapeString(char *tobuf, const char *frombuf, uint32 fromlen)
|
|||||||
{
|
{
|
||||||
// No good reason to lock the DB, we only need it in the first place to check char encoding.
|
// No good reason to lock the DB, we only need it in the first place to check char encoding.
|
||||||
// LockMutex lock(&MDatabase);
|
// LockMutex lock(&MDatabase);
|
||||||
return mysql_real_escape_string(&mysql, tobuf, frombuf, fromlen);
|
return mysql_real_escape_string(mysql, tobuf, frombuf, fromlen);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DBcore::Open(
|
bool DBcore::Open(
|
||||||
@@ -222,7 +217,7 @@ bool DBcore::Open(
|
|||||||
bool iSSL
|
bool iSSL
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
LockMutex lock(&MDatabase);
|
LockMutex lock(m_mutex);
|
||||||
safe_delete_array(pHost);
|
safe_delete_array(pHost);
|
||||||
safe_delete_array(pUser);
|
safe_delete_array(pUser);
|
||||||
safe_delete_array(pPassword);
|
safe_delete_array(pPassword);
|
||||||
@@ -242,13 +237,13 @@ bool DBcore::Open(uint32 *errnum, char *errbuf)
|
|||||||
if (errbuf) {
|
if (errbuf) {
|
||||||
errbuf[0] = 0;
|
errbuf[0] = 0;
|
||||||
}
|
}
|
||||||
LockMutex lock(&MDatabase);
|
LockMutex lock(m_mutex);
|
||||||
if (GetStatus() == Connected) {
|
if (GetStatus() == Connected) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (GetStatus() == Error) {
|
if (GetStatus() == Error) {
|
||||||
mysql_close(&mysql);
|
mysql_close(mysql);
|
||||||
mysql_init(&mysql); // Initialize structure again
|
mysql_init(mysql); // Initialize structure again
|
||||||
}
|
}
|
||||||
if (!pHost) {
|
if (!pHost) {
|
||||||
return false;
|
return false;
|
||||||
@@ -265,7 +260,7 @@ bool DBcore::Open(uint32 *errnum, char *errbuf)
|
|||||||
if (pSSL) {
|
if (pSSL) {
|
||||||
flags |= CLIENT_SSL;
|
flags |= CLIENT_SSL;
|
||||||
}
|
}
|
||||||
if (mysql_real_connect(&mysql, pHost, pUser, pPassword, pDatabase, pPort, 0, flags)) {
|
if (mysql_real_connect(mysql, pHost, pUser, pPassword, pDatabase, pPort, 0, flags)) {
|
||||||
pStatus = Connected;
|
pStatus = Connected;
|
||||||
|
|
||||||
std::string connected_origin_host = pHost;
|
std::string connected_origin_host = pHost;
|
||||||
@@ -275,21 +270,16 @@ bool DBcore::Open(uint32 *errnum, char *errbuf)
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (errnum) {
|
if (errnum) {
|
||||||
*errnum = mysql_errno(&mysql);
|
*errnum = mysql_errno(mysql);
|
||||||
}
|
}
|
||||||
if (errbuf) {
|
if (errbuf) {
|
||||||
snprintf(errbuf, MYSQL_ERRMSG_SIZE, "#%i: %s", mysql_errno(&mysql), mysql_error(&mysql));
|
snprintf(errbuf, MYSQL_ERRMSG_SIZE, "#%i: %s", mysql_errno(mysql), mysql_error(mysql));
|
||||||
}
|
}
|
||||||
pStatus = Error;
|
pStatus = Error;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DBcore::SetMysql(MYSQL *mysql)
|
|
||||||
{
|
|
||||||
DBcore::mysql = *mysql;
|
|
||||||
}
|
|
||||||
|
|
||||||
const std::string &DBcore::GetOriginHost() const
|
const std::string &DBcore::GetOriginHost() const
|
||||||
{
|
{
|
||||||
return origin_host;
|
return origin_host;
|
||||||
@@ -299,3 +289,19 @@ void DBcore::SetOriginHost(const std::string &origin_host)
|
|||||||
{
|
{
|
||||||
DBcore::origin_host = origin_host;
|
DBcore::origin_host = origin_host;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string DBcore::Escape(const std::string& s)
|
||||||
|
{
|
||||||
|
const std::size_t s_len = s.length();
|
||||||
|
std::vector<char> temp((s_len * 2) + 1, '\0');
|
||||||
|
mysql_real_escape_string(mysql, temp.data(), s.c_str(), s_len);
|
||||||
|
|
||||||
|
return temp.data();
|
||||||
|
}
|
||||||
|
|
||||||
|
void DBcore::SetMutex(Mutex *mutex)
|
||||||
|
{
|
||||||
|
safe_delete(m_mutex);
|
||||||
|
|
||||||
|
DBcore::m_mutex = mutex;
|
||||||
|
}
|
||||||
|
|||||||
+14
-4
@@ -12,6 +12,7 @@
|
|||||||
|
|
||||||
#include <mysql.h>
|
#include <mysql.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <mutex>
|
||||||
|
|
||||||
class DBcore {
|
class DBcore {
|
||||||
public:
|
public:
|
||||||
@@ -27,16 +28,22 @@ public:
|
|||||||
void TransactionBegin();
|
void TransactionBegin();
|
||||||
void TransactionCommit();
|
void TransactionCommit();
|
||||||
void TransactionRollback();
|
void TransactionRollback();
|
||||||
|
std::string Escape(const std::string& s);
|
||||||
uint32 DoEscapeString(char *tobuf, const char *frombuf, uint32 fromlen);
|
uint32 DoEscapeString(char *tobuf, const char *frombuf, uint32 fromlen);
|
||||||
void ping();
|
void ping();
|
||||||
MYSQL *getMySQL() { return &mysql; }
|
|
||||||
void SetMysql(MYSQL *mysql);
|
|
||||||
|
|
||||||
const std::string &GetOriginHost() const;
|
const std::string &GetOriginHost() const;
|
||||||
void SetOriginHost(const std::string &origin_host);
|
void SetOriginHost(const std::string &origin_host);
|
||||||
|
|
||||||
bool DoesTableExist(std::string table_name);
|
bool DoesTableExist(std::string table_name);
|
||||||
|
|
||||||
|
void SetMySQL(const DBcore &o)
|
||||||
|
{
|
||||||
|
mysql = o.mysql;
|
||||||
|
mysqlOwner = false;
|
||||||
|
}
|
||||||
|
void SetMutex(Mutex *mutex);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool Open(
|
bool Open(
|
||||||
const char *iHost,
|
const char *iHost,
|
||||||
@@ -53,10 +60,13 @@ protected:
|
|||||||
private:
|
private:
|
||||||
bool Open(uint32 *errnum = nullptr, char *errbuf = nullptr);
|
bool Open(uint32 *errnum = nullptr, char *errbuf = nullptr);
|
||||||
|
|
||||||
MYSQL mysql;
|
MYSQL* mysql;
|
||||||
Mutex MDatabase;
|
bool mysqlOwner;
|
||||||
|
Mutex *m_mutex;
|
||||||
eStatus pStatus;
|
eStatus pStatus;
|
||||||
|
|
||||||
|
std::mutex m_query_lock{};
|
||||||
|
|
||||||
std::string origin_host;
|
std::string origin_host;
|
||||||
|
|
||||||
char *pHost;
|
char *pHost;
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ void Discord::SendWebhookMessage(const std::string &message, const std::string &
|
|||||||
LogDiscord("JSON serialization failure [{}] via [{}]", ex.what(), res->body);
|
LogDiscord("JSON serialization failure [{}] via [{}]", ex.what(), res->body);
|
||||||
}
|
}
|
||||||
|
|
||||||
retry_timer = std::stoi(response["retry_after"].asString()) + 500;
|
retry_timer = Strings::ToInt(response["retry_after"].asString()) + 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
LogDiscord("Rate limited... retrying message in [{}ms]", retry_timer);
|
LogDiscord("Rate limited... retrying message in [{}ms]", retry_timer);
|
||||||
@@ -125,7 +125,7 @@ void Discord::SendPlayerEventMessage(
|
|||||||
LogDiscord("JSON serialization failure [{}] via [{}]", ex.what(), res->body);
|
LogDiscord("JSON serialization failure [{}] via [{}]", ex.what(), res->body);
|
||||||
}
|
}
|
||||||
|
|
||||||
retry_timer = std::stoi(response["retry_after"].asString()) + 500;
|
retry_timer = Strings::ToInt(response["retry_after"].asString()) + 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
LogDiscord("Rate limited... retrying message in [{}ms]", retry_timer);
|
LogDiscord("Rate limited... retrying message in [{}ms]", retry_timer);
|
||||||
|
|||||||
+19
-18
@@ -19,6 +19,7 @@
|
|||||||
#include "../common/global_define.h"
|
#include "../common/global_define.h"
|
||||||
#include "eqemu_config.h"
|
#include "eqemu_config.h"
|
||||||
#include "misc_functions.h"
|
#include "misc_functions.h"
|
||||||
|
#include "strings.h"
|
||||||
|
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
@@ -33,13 +34,13 @@ void EQEmuConfig::parse_config()
|
|||||||
LongName = _root["server"]["world"].get("longname", "").asString();
|
LongName = _root["server"]["world"].get("longname", "").asString();
|
||||||
WorldAddress = _root["server"]["world"].get("address", "").asString();
|
WorldAddress = _root["server"]["world"].get("address", "").asString();
|
||||||
LocalAddress = _root["server"]["world"].get("localaddress", "").asString();
|
LocalAddress = _root["server"]["world"].get("localaddress", "").asString();
|
||||||
MaxClients = atoi(_root["server"]["world"].get("maxclients", "-1").asString().c_str());
|
MaxClients = Strings::ToInt(_root["server"]["world"].get("maxclients", "-1").asString().c_str());
|
||||||
SharedKey = _root["server"]["world"].get("key", "").asString();
|
SharedKey = _root["server"]["world"].get("key", "").asString();
|
||||||
LoginCount = 0;
|
LoginCount = 0;
|
||||||
|
|
||||||
if (_root["server"]["world"]["loginserver"].isObject()) {
|
if (_root["server"]["world"]["loginserver"].isObject()) {
|
||||||
LoginHost = _root["server"]["world"]["loginserver"].get("host", "login.eqemulator.net").asString();
|
LoginHost = _root["server"]["world"]["loginserver"].get("host", "login.eqemulator.net").asString();
|
||||||
LoginPort = atoi(_root["server"]["world"]["loginserver"].get("port", "5998").asString().c_str());
|
LoginPort = Strings::ToInt(_root["server"]["world"]["loginserver"].get("port", "5998").asString().c_str());
|
||||||
LoginLegacy = false;
|
LoginLegacy = false;
|
||||||
if (_root["server"]["world"]["loginserver"].get("legacy", "0").asString() == "1") { LoginLegacy = true; }
|
if (_root["server"]["world"]["loginserver"].get("legacy", "0").asString() == "1") { LoginLegacy = true; }
|
||||||
LoginAccount = _root["server"]["world"]["loginserver"].get("account", "").asString();
|
LoginAccount = _root["server"]["world"]["loginserver"].get("account", "").asString();
|
||||||
@@ -62,7 +63,7 @@ void EQEmuConfig::parse_config()
|
|||||||
|
|
||||||
auto loginconfig = new LoginConfig;
|
auto loginconfig = new LoginConfig;
|
||||||
loginconfig->LoginHost = _root["server"]["world"][str].get("host", "login.eqemulator.net").asString();
|
loginconfig->LoginHost = _root["server"]["world"][str].get("host", "login.eqemulator.net").asString();
|
||||||
loginconfig->LoginPort = atoi(_root["server"]["world"][str].get("port", "5998").asString().c_str());
|
loginconfig->LoginPort = Strings::ToInt(_root["server"]["world"][str].get("port", "5998").asString().c_str());
|
||||||
loginconfig->LoginAccount = _root["server"]["world"][str].get("account", "").asString();
|
loginconfig->LoginAccount = _root["server"]["world"][str].get("account", "").asString();
|
||||||
loginconfig->LoginPassword = _root["server"]["world"][str].get("password", "").asString();
|
loginconfig->LoginPassword = _root["server"]["world"][str].get("password", "").asString();
|
||||||
|
|
||||||
@@ -85,15 +86,15 @@ void EQEmuConfig::parse_config()
|
|||||||
Locked = false;
|
Locked = false;
|
||||||
if (_root["server"]["world"].get("locked", "false").asString() == "true") { Locked = true; }
|
if (_root["server"]["world"].get("locked", "false").asString() == "true") { Locked = true; }
|
||||||
WorldIP = _root["server"]["world"]["tcp"].get("host", "127.0.0.1").asString();
|
WorldIP = _root["server"]["world"]["tcp"].get("host", "127.0.0.1").asString();
|
||||||
WorldTCPPort = atoi(_root["server"]["world"]["tcp"].get("port", "9000").asString().c_str());
|
WorldTCPPort = Strings::ToInt(_root["server"]["world"]["tcp"].get("port", "9000").asString().c_str());
|
||||||
|
|
||||||
TelnetIP = _root["server"]["world"]["telnet"].get("ip", "127.0.0.1").asString();
|
TelnetIP = _root["server"]["world"]["telnet"].get("ip", "127.0.0.1").asString();
|
||||||
TelnetTCPPort = atoi(_root["server"]["world"]["telnet"].get("port", "9001").asString().c_str());
|
TelnetTCPPort = Strings::ToInt(_root["server"]["world"]["telnet"].get("port", "9001").asString().c_str());
|
||||||
TelnetEnabled = false;
|
TelnetEnabled = false;
|
||||||
if (_root["server"]["world"]["telnet"].get("enabled", "false").asString() == "true") { TelnetEnabled = true; }
|
if (_root["server"]["world"]["telnet"].get("enabled", "false").asString() == "true") { TelnetEnabled = true; }
|
||||||
|
|
||||||
WorldHTTPMimeFile = _root["server"]["world"]["http"].get("mimefile", "mime.types").asString();
|
WorldHTTPMimeFile = _root["server"]["world"]["http"].get("mimefile", "mime.types").asString();
|
||||||
WorldHTTPPort = atoi(_root["server"]["world"]["http"].get("port", "9080").asString().c_str());
|
WorldHTTPPort = Strings::ToInt(_root["server"]["world"]["http"].get("port", "9080").asString().c_str());
|
||||||
WorldHTTPEnabled = false;
|
WorldHTTPEnabled = false;
|
||||||
|
|
||||||
if (_root["server"]["world"]["http"].get("enabled", "false").asString() == "true") {
|
if (_root["server"]["world"]["http"].get("enabled", "false").asString() == "true") {
|
||||||
@@ -108,9 +109,9 @@ void EQEmuConfig::parse_config()
|
|||||||
* UCS
|
* UCS
|
||||||
*/
|
*/
|
||||||
ChatHost = _root["server"]["chatserver"].get("host", "eqchat.eqemulator.net").asString();
|
ChatHost = _root["server"]["chatserver"].get("host", "eqchat.eqemulator.net").asString();
|
||||||
ChatPort = atoi(_root["server"]["chatserver"].get("port", "7778").asString().c_str());
|
ChatPort = Strings::ToInt(_root["server"]["chatserver"].get("port", "7778").asString().c_str());
|
||||||
MailHost = _root["server"]["mailserver"].get("host", "eqmail.eqemulator.net").asString();
|
MailHost = _root["server"]["mailserver"].get("host", "eqmail.eqemulator.net").asString();
|
||||||
MailPort = atoi(_root["server"]["mailserver"].get("port", "7778").asString().c_str());
|
MailPort = Strings::ToInt(_root["server"]["mailserver"].get("port", "7778").asString().c_str());
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Database
|
* Database
|
||||||
@@ -118,7 +119,7 @@ void EQEmuConfig::parse_config()
|
|||||||
DatabaseUsername = _root["server"]["database"].get("username", "eq").asString();
|
DatabaseUsername = _root["server"]["database"].get("username", "eq").asString();
|
||||||
DatabasePassword = _root["server"]["database"].get("password", "eq").asString();
|
DatabasePassword = _root["server"]["database"].get("password", "eq").asString();
|
||||||
DatabaseHost = _root["server"]["database"].get("host", "localhost").asString();
|
DatabaseHost = _root["server"]["database"].get("host", "localhost").asString();
|
||||||
DatabasePort = atoi(_root["server"]["database"].get("port", "3306").asString().c_str());
|
DatabasePort = Strings::ToInt(_root["server"]["database"].get("port", "3306").asString().c_str());
|
||||||
DatabaseDB = _root["server"]["database"].get("db", "eq").asString();
|
DatabaseDB = _root["server"]["database"].get("db", "eq").asString();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -127,14 +128,14 @@ void EQEmuConfig::parse_config()
|
|||||||
ContentDbUsername = _root["server"]["content_database"].get("username", "").asString();
|
ContentDbUsername = _root["server"]["content_database"].get("username", "").asString();
|
||||||
ContentDbPassword = _root["server"]["content_database"].get("password", "").asString();
|
ContentDbPassword = _root["server"]["content_database"].get("password", "").asString();
|
||||||
ContentDbHost = _root["server"]["content_database"].get("host", "").asString();
|
ContentDbHost = _root["server"]["content_database"].get("host", "").asString();
|
||||||
ContentDbPort = atoi(_root["server"]["content_database"].get("port", 0).asString().c_str());
|
ContentDbPort = Strings::ToInt(_root["server"]["content_database"].get("port", 0).asString().c_str());
|
||||||
ContentDbName = _root["server"]["content_database"].get("db", "").asString();
|
ContentDbName = _root["server"]["content_database"].get("db", "").asString();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* QS
|
* QS
|
||||||
*/
|
*/
|
||||||
QSDatabaseHost = _root["server"]["qsdatabase"].get("host", "localhost").asString();
|
QSDatabaseHost = _root["server"]["qsdatabase"].get("host", "localhost").asString();
|
||||||
QSDatabasePort = atoi(_root["server"]["qsdatabase"].get("port", "3306").asString().c_str());
|
QSDatabasePort = Strings::ToInt(_root["server"]["qsdatabase"].get("port", "3306").asString().c_str());
|
||||||
QSDatabaseUsername = _root["server"]["qsdatabase"].get("username", "eq").asString();
|
QSDatabaseUsername = _root["server"]["qsdatabase"].get("username", "eq").asString();
|
||||||
QSDatabasePassword = _root["server"]["qsdatabase"].get("password", "eq").asString();
|
QSDatabasePassword = _root["server"]["qsdatabase"].get("password", "eq").asString();
|
||||||
QSDatabaseDB = _root["server"]["qsdatabase"].get("db", "eq").asString();
|
QSDatabaseDB = _root["server"]["qsdatabase"].get("db", "eq").asString();
|
||||||
@@ -142,9 +143,9 @@ void EQEmuConfig::parse_config()
|
|||||||
/**
|
/**
|
||||||
* Zones
|
* Zones
|
||||||
*/
|
*/
|
||||||
DefaultStatus = atoi(_root["server"]["zones"].get("defaultstatus", 0).asString().c_str());
|
DefaultStatus = Strings::ToInt(_root["server"]["zones"].get("defaultstatus", 0).asString().c_str());
|
||||||
ZonePortLow = atoi(_root["server"]["zones"]["ports"].get("low", "7000").asString().c_str());
|
ZonePortLow = Strings::ToInt(_root["server"]["zones"]["ports"].get("low", "7000").asString().c_str());
|
||||||
ZonePortHigh = atoi(_root["server"]["zones"]["ports"].get("high", "7999").asString().c_str());
|
ZonePortHigh = Strings::ToInt(_root["server"]["zones"]["ports"].get("high", "7999").asString().c_str());
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Files
|
* Files
|
||||||
@@ -174,10 +175,10 @@ void EQEmuConfig::parse_config()
|
|||||||
/**
|
/**
|
||||||
* Launcher
|
* Launcher
|
||||||
*/
|
*/
|
||||||
RestartWait = atoi(_root["server"]["launcher"]["timers"].get("restart", "10000").asString().c_str());
|
RestartWait = Strings::ToInt(_root["server"]["launcher"]["timers"].get("restart", "10000").asString().c_str());
|
||||||
TerminateWait = atoi(_root["server"]["launcher"]["timers"].get("reterminate", "10000").asString().c_str());
|
TerminateWait = Strings::ToInt(_root["server"]["launcher"]["timers"].get("reterminate", "10000").asString().c_str());
|
||||||
InitialBootWait = atoi(_root["server"]["launcher"]["timers"].get("initial", "20000").asString().c_str());
|
InitialBootWait = Strings::ToInt(_root["server"]["launcher"]["timers"].get("initial", "20000").asString().c_str());
|
||||||
ZoneBootInterval = atoi(_root["server"]["launcher"]["timers"].get("interval", "2000").asString().c_str());
|
ZoneBootInterval = Strings::ToInt(_root["server"]["launcher"]["timers"].get("interval", "2000").asString().c_str());
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
ZoneExe = _root["server"]["launcher"].get("exe", "zone.exe").asString();
|
ZoneExe = _root["server"]["launcher"].get("exe", "zone.exe").asString();
|
||||||
#else
|
#else
|
||||||
|
|||||||
@@ -136,6 +136,7 @@ namespace Logs {
|
|||||||
PacketServerToServer,
|
PacketServerToServer,
|
||||||
Bugs,
|
Bugs,
|
||||||
QuestErrors,
|
QuestErrors,
|
||||||
|
PlayerEvents,
|
||||||
MaxCategoryID /* Don't Remove this */
|
MaxCategoryID /* Don't Remove this */
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -230,7 +231,8 @@ namespace Logs {
|
|||||||
"Packet C->S",
|
"Packet C->S",
|
||||||
"Packet S->S",
|
"Packet S->S",
|
||||||
"Bugs",
|
"Bugs",
|
||||||
"QuestErrors"
|
"QuestErrors",
|
||||||
|
"PlayerEvents",
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -784,6 +784,16 @@
|
|||||||
OutF(LogSys, Logs::Detail, Logs::QuestErrors, __FILE__, __func__, __LINE__, message, ##__VA_ARGS__);\
|
OutF(LogSys, Logs::Detail, Logs::QuestErrors, __FILE__, __func__, __LINE__, message, ##__VA_ARGS__);\
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
|
#define LogPlayerEvents(message, ...) do {\
|
||||||
|
if (LogSys.IsLogEnabled(Logs::General, Logs::PlayerEvents))\
|
||||||
|
OutF(LogSys, Logs::General, Logs::PlayerEvents, __FILE__, __func__, __LINE__, message, ##__VA_ARGS__);\
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
#define LogPlayerEventsDetail(message, ...) do {\
|
||||||
|
if (LogSys.IsLogEnabled(Logs::Detail, Logs::PlayerEvents))\
|
||||||
|
OutF(LogSys, Logs::Detail, Logs::PlayerEvents, __FILE__, __func__, __LINE__, message, ##__VA_ARGS__);\
|
||||||
|
} while (0)
|
||||||
|
|
||||||
#define Log(debug_level, log_category, message, ...) do {\
|
#define Log(debug_level, log_category, message, ...) do {\
|
||||||
if (LogSys.IsLogEnabled(debug_level, log_category))\
|
if (LogSys.IsLogEnabled(debug_level, log_category))\
|
||||||
LogSys.Out(debug_level, log_category, __FILE__, __func__, __LINE__, message, ##__VA_ARGS__);\
|
LogSys.Out(debug_level, log_category, __FILE__, __func__, __LINE__, message, ##__VA_ARGS__);\
|
||||||
|
|||||||
@@ -30,6 +30,9 @@ void PlayerEventLogs::Init()
|
|||||||
std::vector<int> db{};
|
std::vector<int> db{};
|
||||||
db.reserve(s.size());
|
db.reserve(s.size());
|
||||||
for (auto &e: s) {
|
for (auto &e: s) {
|
||||||
|
if (e.id >= PlayerEvent::MAX) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
m_settings[e.id] = e;
|
m_settings[e.id] = e;
|
||||||
db.emplace_back(e.id);
|
db.emplace_back(e.id);
|
||||||
}
|
}
|
||||||
@@ -110,7 +113,9 @@ bool PlayerEventLogs::IsEventEnabled(PlayerEvent::EventType event)
|
|||||||
// this processes any current player events on the queue
|
// this processes any current player events on the queue
|
||||||
void PlayerEventLogs::ProcessBatchQueue()
|
void PlayerEventLogs::ProcessBatchQueue()
|
||||||
{
|
{
|
||||||
|
m_batch_queue_lock.lock();
|
||||||
if (m_record_batch_queue.empty()) {
|
if (m_record_batch_queue.empty()) {
|
||||||
|
m_batch_queue_lock.unlock();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -118,14 +123,13 @@ void PlayerEventLogs::ProcessBatchQueue()
|
|||||||
|
|
||||||
// flush many
|
// flush many
|
||||||
PlayerEventLogsRepository::InsertMany(*m_database, m_record_batch_queue);
|
PlayerEventLogsRepository::InsertMany(*m_database, m_record_batch_queue);
|
||||||
LogInfo(
|
LogPlayerEventsDetail(
|
||||||
"Processing batch player event log queue of [{}] took [{}]",
|
"Processing batch player event log queue of [{}] took [{}]",
|
||||||
m_record_batch_queue.size(),
|
m_record_batch_queue.size(),
|
||||||
benchmark.elapsed()
|
benchmark.elapsed()
|
||||||
);
|
);
|
||||||
|
|
||||||
// empty
|
// empty
|
||||||
m_batch_queue_lock.lock();
|
|
||||||
m_record_batch_queue = {};
|
m_record_batch_queue = {};
|
||||||
m_batch_queue_lock.unlock();
|
m_batch_queue_lock.unlock();
|
||||||
}
|
}
|
||||||
@@ -599,10 +603,10 @@ std::string PlayerEventLogs::GetDiscordPayloadFromEvent(const PlayerEvent::Playe
|
|||||||
return payload;
|
return payload;
|
||||||
}
|
}
|
||||||
|
|
||||||
// general process function, used in world or UCS depending on rule Logging:PlayerEventsQSProcess
|
// general process function, used in world or QS depending on rule Logging:PlayerEventsQSProcess
|
||||||
void PlayerEventLogs::Process()
|
void PlayerEventLogs::Process()
|
||||||
{
|
{
|
||||||
if (m_process_batch_events_timer.Check()) {
|
if (m_process_batch_events_timer.Check() || m_record_batch_queue.size() >= RuleI(Logging, BatchPlayerEventProcessChunkSize)) {
|
||||||
ProcessBatchQueue();
|
ProcessBatchQueue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -693,9 +697,10 @@ void PlayerEventLogs::SetSettingsDefaults()
|
|||||||
m_settings[PlayerEvent::BANDOLIER_SWAP].event_enabled = 0;
|
m_settings[PlayerEvent::BANDOLIER_SWAP].event_enabled = 0;
|
||||||
m_settings[PlayerEvent::DISCOVER_ITEM].event_enabled = 1;
|
m_settings[PlayerEvent::DISCOVER_ITEM].event_enabled = 1;
|
||||||
m_settings[PlayerEvent::POSSIBLE_HACK].event_enabled = 1;
|
m_settings[PlayerEvent::POSSIBLE_HACK].event_enabled = 1;
|
||||||
m_settings[PlayerEvent::KILLED_NPC].event_enabled = 1;
|
m_settings[PlayerEvent::KILLED_NPC].event_enabled = 0;
|
||||||
m_settings[PlayerEvent::KILLED_NAMED_NPC].event_enabled = 1;
|
m_settings[PlayerEvent::KILLED_NAMED_NPC].event_enabled = 1;
|
||||||
m_settings[PlayerEvent::KILLED_RAID_NPC].event_enabled = 1;
|
m_settings[PlayerEvent::KILLED_RAID_NPC].event_enabled = 1;
|
||||||
|
m_settings[PlayerEvent::ITEM_CREATION].event_enabled = 1;
|
||||||
|
|
||||||
for (int i = PlayerEvent::GM_COMMAND; i != PlayerEvent::MAX; i++) {
|
for (int i = PlayerEvent::GM_COMMAND; i != PlayerEvent::MAX; i++) {
|
||||||
m_settings[i].retention_days = RETENTION_DAYS_DEFAULT;
|
m_settings[i].retention_days = RETENTION_DAYS_DEFAULT;
|
||||||
|
|||||||
@@ -55,6 +55,7 @@ namespace PlayerEvent {
|
|||||||
KILLED_NPC,
|
KILLED_NPC,
|
||||||
KILLED_NAMED_NPC,
|
KILLED_NAMED_NPC,
|
||||||
KILLED_RAID_NPC,
|
KILLED_RAID_NPC,
|
||||||
|
ITEM_CREATION,
|
||||||
MAX // dont remove
|
MAX // dont remove
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -110,7 +111,8 @@ namespace PlayerEvent {
|
|||||||
"Possible Hack",
|
"Possible Hack",
|
||||||
"Killed NPC",
|
"Killed NPC",
|
||||||
"Killed Named NPC",
|
"Killed Named NPC",
|
||||||
"Killed Raid NPC"
|
"Killed Raid NPC",
|
||||||
|
"Item Creation"
|
||||||
};
|
};
|
||||||
|
|
||||||
// Generic struct used by all events
|
// Generic struct used by all events
|
||||||
@@ -184,6 +186,40 @@ namespace PlayerEvent {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// used in Trade event
|
||||||
|
struct ItemCreationEvent {
|
||||||
|
int64 item_id;
|
||||||
|
std::string item_name;
|
||||||
|
uint16 to_slot;
|
||||||
|
int16 charges;
|
||||||
|
uint32 aug1;
|
||||||
|
uint32 aug2;
|
||||||
|
uint32 aug3;
|
||||||
|
uint32 aug4;
|
||||||
|
uint32 aug5;
|
||||||
|
uint32 aug6;
|
||||||
|
bool attuned;
|
||||||
|
|
||||||
|
// cereal
|
||||||
|
template<class Archive>
|
||||||
|
void serialize(Archive &ar)
|
||||||
|
{
|
||||||
|
ar(
|
||||||
|
CEREAL_NVP(item_id),
|
||||||
|
CEREAL_NVP(item_name),
|
||||||
|
CEREAL_NVP(to_slot),
|
||||||
|
CEREAL_NVP(charges),
|
||||||
|
CEREAL_NVP(aug1),
|
||||||
|
CEREAL_NVP(aug2),
|
||||||
|
CEREAL_NVP(aug3),
|
||||||
|
CEREAL_NVP(aug4),
|
||||||
|
CEREAL_NVP(aug5),
|
||||||
|
CEREAL_NVP(aug6),
|
||||||
|
CEREAL_NVP(attuned)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// used in Trade event
|
// used in Trade event
|
||||||
struct TradeItem {
|
struct TradeItem {
|
||||||
int64 item_id;
|
int64 item_id;
|
||||||
|
|||||||
+1
-1
@@ -132,7 +132,7 @@ enum { //reuse times
|
|||||||
InstillDoubtReuseTime = 9,
|
InstillDoubtReuseTime = 9,
|
||||||
FishingReuseTime = 11,
|
FishingReuseTime = 11,
|
||||||
ForagingReuseTime = 50,
|
ForagingReuseTime = 50,
|
||||||
MendReuseTime = 290,
|
MendReuseTime = 360,
|
||||||
BashReuseTime = 5,
|
BashReuseTime = 5,
|
||||||
BackstabReuseTime = 9,
|
BackstabReuseTime = 9,
|
||||||
KickReuseTime = 5,
|
KickReuseTime = 5,
|
||||||
|
|||||||
+17
-17
@@ -61,7 +61,7 @@ bool BaseGuildManager::LoadGuilds() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (auto row=results.begin();row!=results.end();++row)
|
for (auto row=results.begin();row!=results.end();++row)
|
||||||
_CreateGuild(atoi(row[0]), row[1], atoi(row[2]), atoi(row[3]), row[4], row[5], row[6], row[7]);
|
_CreateGuild(Strings::ToInt(row[0]), row[1], Strings::ToInt(row[2]), Strings::ToInt(row[3]), row[4], row[5], row[6], row[7]);
|
||||||
|
|
||||||
LogInfo("Loaded [{}] Guilds", Strings::Commify(std::to_string(results.RowCount())));
|
LogInfo("Loaded [{}] Guilds", Strings::Commify(std::to_string(results.RowCount())));
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ bool BaseGuildManager::LoadGuilds() {
|
|||||||
|
|
||||||
for (auto row=results.begin();row!=results.end();++row)
|
for (auto row=results.begin();row!=results.end();++row)
|
||||||
{
|
{
|
||||||
uint32 guild_id = atoi(row[0]);
|
uint32 guild_id = Strings::ToInt(row[0]);
|
||||||
uint8 rankn = atoi(row[1]);
|
uint8 rankn = Strings::ToInt(row[1]);
|
||||||
|
|
||||||
if(rankn > GUILD_MAX_RANK) {
|
if(rankn > GUILD_MAX_RANK) {
|
||||||
LogGuilds("Found invalid (too high) rank [{}] for guild [{}], skipping", rankn, guild_id);
|
LogGuilds("Found invalid (too high) rank [{}] for guild [{}], skipping", rankn, guild_id);
|
||||||
@@ -131,7 +131,7 @@ bool BaseGuildManager::RefreshGuild(uint32 guild_id) {
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
info = _CreateGuild(guild_id, row[0], atoi(row[1]), atoi(row[2]), row[3], row[4], row[5], row[6]);
|
info = _CreateGuild(guild_id, row[0], Strings::ToInt(row[1]), Strings::ToInt(row[2]), row[3], row[4], row[5], row[6]);
|
||||||
|
|
||||||
query = StringFormat("SELECT guild_id, `rank`, title, can_hear, can_speak, can_invite, can_remove, can_promote, can_demote, can_motd, can_warpeace "
|
query = StringFormat("SELECT guild_id, `rank`, title, can_hear, can_speak, can_invite, can_remove, can_promote, can_demote, can_motd, can_warpeace "
|
||||||
"FROM guild_ranks WHERE guild_id=%lu", (unsigned long)guild_id);
|
"FROM guild_ranks WHERE guild_id=%lu", (unsigned long)guild_id);
|
||||||
@@ -144,7 +144,7 @@ bool BaseGuildManager::RefreshGuild(uint32 guild_id) {
|
|||||||
|
|
||||||
for (auto row=results.begin();row!=results.end();++row)
|
for (auto row=results.begin();row!=results.end();++row)
|
||||||
{
|
{
|
||||||
uint8 rankn = atoi(row[1]);
|
uint8 rankn = Strings::ToInt(row[1]);
|
||||||
|
|
||||||
if(rankn > GUILD_MAX_RANK) {
|
if(rankn > GUILD_MAX_RANK) {
|
||||||
LogGuilds("Found invalid (too high) rank [{}] for guild [{}], skipping", rankn, guild_id);
|
LogGuilds("Found invalid (too high) rank [{}] for guild [{}], skipping", rankn, guild_id);
|
||||||
@@ -787,7 +787,7 @@ bool BaseGuildManager::GetBankerFlag(uint32 CharID)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
bool IsBanker = atoi(row[0]);
|
bool IsBanker = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
return IsBanker;
|
return IsBanker;
|
||||||
}
|
}
|
||||||
@@ -817,7 +817,7 @@ bool BaseGuildManager::GetAltFlag(uint32 CharID)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
bool IsAlt = atoi(row[0]);
|
bool IsAlt = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
return IsAlt;
|
return IsAlt;
|
||||||
}
|
}
|
||||||
@@ -873,19 +873,19 @@ bool BaseGuildManager::QueryWithLogging(std::string query, const char *errmsg) {
|
|||||||
" FROM `character_data` AS c LEFT JOIN `guild_members` AS g ON c.`id` = g.`char_id` "
|
" FROM `character_data` AS c LEFT JOIN `guild_members` AS g ON c.`id` = g.`char_id` "
|
||||||
static void ProcessGuildMember(MySQLRequestRow row, CharGuildInfo &into) {
|
static void ProcessGuildMember(MySQLRequestRow row, CharGuildInfo &into) {
|
||||||
//fields from `characer_`
|
//fields from `characer_`
|
||||||
into.char_id = atoi(row[0]);
|
into.char_id = Strings::ToInt(row[0]);
|
||||||
into.char_name = row[1];
|
into.char_name = row[1];
|
||||||
into.class_ = atoi(row[2]);
|
into.class_ = Strings::ToInt(row[2]);
|
||||||
into.level = atoi(row[3]);
|
into.level = Strings::ToInt(row[3]);
|
||||||
into.time_last_on = atoul(row[4]);
|
into.time_last_on = Strings::ToUnsignedInt(row[4]);
|
||||||
into.zone_id = atoi(row[5]);
|
into.zone_id = Strings::ToInt(row[5]);
|
||||||
|
|
||||||
//fields from `guild_members`, leave at defaults if missing
|
//fields from `guild_members`, leave at defaults if missing
|
||||||
into.guild_id = row[6] ? atoi(row[6]) : GUILD_NONE;
|
into.guild_id = row[6] ? Strings::ToInt(row[6]) : GUILD_NONE;
|
||||||
into.rank = row[7] ? atoi(row[7]) : (GUILD_MAX_RANK+1);
|
into.rank = row[7] ? Strings::ToInt(row[7]) : (GUILD_MAX_RANK+1);
|
||||||
into.tribute_enable = row[8] ? (row[8][0] == '0'?false:true) : false;
|
into.tribute_enable = row[8] ? (row[8][0] == '0'?false:true) : false;
|
||||||
into.total_tribute = row[9] ? atoi(row[9]) : 0;
|
into.total_tribute = row[9] ? Strings::ToInt(row[9]) : 0;
|
||||||
into.last_tribute = row[10]? atoul(row[10]) : 0; //timestamp
|
into.last_tribute = row[10]? Strings::ToUnsignedInt(row[10]) : 0; //timestamp
|
||||||
into.banker = row[11]? (row[11][0] == '0'?false:true) : false;
|
into.banker = row[11]? (row[11][0] == '0'?false:true) : false;
|
||||||
into.public_note = row[12]? row[12] : "";
|
into.public_note = row[12]? row[12] : "";
|
||||||
into.alt = row[13]? (row[13][0] == '0'?false:true) : false;
|
into.alt = row[13]? (row[13][0] == '0'?false:true) : false;
|
||||||
@@ -1258,7 +1258,7 @@ uint32 BaseGuildManager::GetGuildIDByCharacterID(uint32 character_id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
auto guild_id = std::stoul(row[0]);
|
auto guild_id = Strings::ToUnsignedInt(row[0]);
|
||||||
return guild_id;
|
return guild_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -272,6 +272,8 @@ inline const unsigned char *ASN1_STRING_get0_data(const ASN1_STRING *asn1) {
|
|||||||
#include <brotli/encode.h>
|
#include <brotli/encode.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include "../strings.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Declaration
|
* Declaration
|
||||||
*/
|
*/
|
||||||
@@ -3812,12 +3814,12 @@ inline bool brotli_decompressor::decompress(const char *data,
|
|||||||
if (std::regex_match(b, e, cm, re_another_range)) {
|
if (std::regex_match(b, e, cm, re_another_range)) {
|
||||||
ssize_t first = -1;
|
ssize_t first = -1;
|
||||||
if (!cm.str(1).empty()) {
|
if (!cm.str(1).empty()) {
|
||||||
first = static_cast<ssize_t>(std::stoll(cm.str(1)));
|
first = static_cast<ssize_t>(Strings::ToBigInt(cm.str(1)));
|
||||||
}
|
}
|
||||||
|
|
||||||
ssize_t last = -1;
|
ssize_t last = -1;
|
||||||
if (!cm.str(2).empty()) {
|
if (!cm.str(2).empty()) {
|
||||||
last = static_cast<ssize_t>(std::stoll(cm.str(2)));
|
last = static_cast<ssize_t>(Strings::ToBigInt(cm.str(2)));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (first != -1 && last != -1 && first > last) {
|
if (first != -1 && last != -1 && first > last) {
|
||||||
|
|||||||
+33
-11
@@ -24,16 +24,16 @@
|
|||||||
#include "rulesys.h"
|
#include "rulesys.h"
|
||||||
#include "shareddb.h"
|
#include "shareddb.h"
|
||||||
#include "strings.h"
|
#include "strings.h"
|
||||||
|
#include "util/uuid.h"
|
||||||
//#include "../common/light_source.h"
|
//#include "../common/light_source.h"
|
||||||
|
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
|
|
||||||
//#include <iostream>
|
//#include <iostream>
|
||||||
|
|
||||||
int32 NextItemInstSerialNumber = 1;
|
uint32 NextItemInstSerialNumber = 1;
|
||||||
|
|
||||||
static inline int32 GetNextItemInstSerialNumber() {
|
static inline uint32 GetNextItemInstSerialNumber() {
|
||||||
|
|
||||||
// The Bazaar relies on each item a client has up for Trade having a unique
|
// The Bazaar relies on each item a client has up for Trade having a unique
|
||||||
// identifier. This 'SerialNumber' is sent in Serialized item packets and
|
// identifier. This 'SerialNumber' is sent in Serialized item packets and
|
||||||
@@ -45,7 +45,7 @@ static inline int32 GetNextItemInstSerialNumber() {
|
|||||||
// NextItemInstSerialNumber is the next one to hand out.
|
// NextItemInstSerialNumber is the next one to hand out.
|
||||||
//
|
//
|
||||||
// It is very unlikely to reach 2,147,483,647. Maybe we should call abort(), rather than wrapping back to 1.
|
// It is very unlikely to reach 2,147,483,647. Maybe we should call abort(), rather than wrapping back to 1.
|
||||||
if(NextItemInstSerialNumber >= INT_MAX)
|
if(NextItemInstSerialNumber >= UINT_MAX)
|
||||||
NextItemInstSerialNumber = 1;
|
NextItemInstSerialNumber = 1;
|
||||||
else
|
else
|
||||||
NextItemInstSerialNumber++;
|
NextItemInstSerialNumber++;
|
||||||
@@ -56,13 +56,21 @@ static inline int32 GetNextItemInstSerialNumber() {
|
|||||||
//
|
//
|
||||||
// class EQ::ItemInstance
|
// class EQ::ItemInstance
|
||||||
//
|
//
|
||||||
EQ::ItemInstance::ItemInstance(const ItemData* item, int16 charges) {
|
EQ::ItemInstance::ItemInstance(const ItemData* item, const std::string& guid, int16 charges) {
|
||||||
m_use_type = ItemInstNormal;
|
m_use_type = ItemInstNormal;
|
||||||
if(item) {
|
if(item) {
|
||||||
m_item = new ItemData(*item);
|
m_item = new ItemData(*item);
|
||||||
} else {
|
} else {
|
||||||
m_item = nullptr;
|
m_item = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (guid.empty()) {
|
||||||
|
m_guid = EQ::Util::UUID::Generate().ToString();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
m_guid = guid;
|
||||||
|
}
|
||||||
|
|
||||||
m_charges = charges;
|
m_charges = charges;
|
||||||
m_price = 0;
|
m_price = 0;
|
||||||
m_attuned = false;
|
m_attuned = false;
|
||||||
@@ -72,7 +80,7 @@ EQ::ItemInstance::ItemInstance(const ItemData* item, int16 charges) {
|
|||||||
else
|
else
|
||||||
m_color = 0;
|
m_color = 0;
|
||||||
m_merchantcount = 1;
|
m_merchantcount = 1;
|
||||||
m_SerialNumber = GetNextItemInstSerialNumber();
|
m_serial_number = GetNextItemInstSerialNumber();
|
||||||
|
|
||||||
m_exp = 0;
|
m_exp = 0;
|
||||||
m_evolveLvl = 0;
|
m_evolveLvl = 0;
|
||||||
@@ -85,9 +93,10 @@ EQ::ItemInstance::ItemInstance(const ItemData* item, int16 charges) {
|
|||||||
m_ornament_hero_model = 0;
|
m_ornament_hero_model = 0;
|
||||||
m_recast_timestamp = 0;
|
m_recast_timestamp = 0;
|
||||||
m_new_id_file = 0;
|
m_new_id_file = 0;
|
||||||
|
m_currentslot = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
EQ::ItemInstance::ItemInstance(SharedDatabase *db, uint32 item_id, int16 charges) {
|
EQ::ItemInstance::ItemInstance(SharedDatabase *db, uint32 item_id, const std::string& guid, int16 charges) {
|
||||||
m_use_type = ItemInstNormal;
|
m_use_type = ItemInstNormal;
|
||||||
m_item = db->GetItem(item_id);
|
m_item = db->GetItem(item_id);
|
||||||
if(m_item) {
|
if(m_item) {
|
||||||
@@ -97,6 +106,13 @@ EQ::ItemInstance::ItemInstance(SharedDatabase *db, uint32 item_id, int16 charges
|
|||||||
m_item = nullptr;
|
m_item = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (guid.empty()) {
|
||||||
|
m_guid = EQ::Util::UUID::Generate().ToString();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
m_guid = guid;
|
||||||
|
}
|
||||||
|
|
||||||
m_charges = charges;
|
m_charges = charges;
|
||||||
m_price = 0;
|
m_price = 0;
|
||||||
m_merchantslot = 0;
|
m_merchantslot = 0;
|
||||||
@@ -106,7 +122,7 @@ EQ::ItemInstance::ItemInstance(SharedDatabase *db, uint32 item_id, int16 charges
|
|||||||
else
|
else
|
||||||
m_color = 0;
|
m_color = 0;
|
||||||
m_merchantcount = 1;
|
m_merchantcount = 1;
|
||||||
m_SerialNumber = GetNextItemInstSerialNumber();
|
m_serial_number = GetNextItemInstSerialNumber();
|
||||||
|
|
||||||
m_exp = 0;
|
m_exp = 0;
|
||||||
m_evolveLvl = 0;
|
m_evolveLvl = 0;
|
||||||
@@ -119,17 +135,20 @@ EQ::ItemInstance::ItemInstance(SharedDatabase *db, uint32 item_id, int16 charges
|
|||||||
m_ornament_hero_model = 0;
|
m_ornament_hero_model = 0;
|
||||||
m_recast_timestamp = 0;
|
m_recast_timestamp = 0;
|
||||||
m_new_id_file = 0;
|
m_new_id_file = 0;
|
||||||
|
m_currentslot = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
EQ::ItemInstance::ItemInstance(ItemInstTypes use_type) {
|
EQ::ItemInstance::ItemInstance(ItemInstTypes use_type) {
|
||||||
m_use_type = use_type;
|
m_use_type = use_type;
|
||||||
|
|
||||||
|
m_guid = EQ::Util::UUID::Generate().ToString();
|
||||||
m_item = nullptr;
|
m_item = nullptr;
|
||||||
m_charges = 0;
|
m_charges = 0;
|
||||||
m_price = 0;
|
m_price = 0;
|
||||||
m_attuned = false;
|
m_attuned = false;
|
||||||
m_merchantslot = 0;
|
m_merchantslot = 0;
|
||||||
m_color = 0;
|
m_color = 0;
|
||||||
|
m_serial_number = 0;
|
||||||
m_exp = 0;
|
m_exp = 0;
|
||||||
m_evolveLvl = 0;
|
m_evolveLvl = 0;
|
||||||
m_activated = false;
|
m_activated = false;
|
||||||
@@ -141,6 +160,8 @@ EQ::ItemInstance::ItemInstance(ItemInstTypes use_type) {
|
|||||||
m_ornament_hero_model = 0;
|
m_ornament_hero_model = 0;
|
||||||
m_recast_timestamp = 0;
|
m_recast_timestamp = 0;
|
||||||
m_new_id_file = 0;
|
m_new_id_file = 0;
|
||||||
|
m_currentslot = 0;
|
||||||
|
m_merchantcount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Make a copy of an EQ::ItemInstance object
|
// Make a copy of an EQ::ItemInstance object
|
||||||
@@ -152,6 +173,7 @@ EQ::ItemInstance::ItemInstance(const ItemInstance& copy)
|
|||||||
else
|
else
|
||||||
m_item = nullptr;
|
m_item = nullptr;
|
||||||
|
|
||||||
|
m_guid = copy.m_guid;
|
||||||
m_charges=copy.m_charges;
|
m_charges=copy.m_charges;
|
||||||
m_price=copy.m_price;
|
m_price=copy.m_price;
|
||||||
m_color=copy.m_color;
|
m_color=copy.m_color;
|
||||||
@@ -176,7 +198,7 @@ EQ::ItemInstance::ItemInstance(const ItemInstance& copy)
|
|||||||
for (iter = copy.m_custom_data.begin(); iter != copy.m_custom_data.end(); ++iter) {
|
for (iter = copy.m_custom_data.begin(); iter != copy.m_custom_data.end(); ++iter) {
|
||||||
m_custom_data[iter->first] = iter->second;
|
m_custom_data[iter->first] = iter->second;
|
||||||
}
|
}
|
||||||
m_SerialNumber = copy.m_SerialNumber;
|
m_serial_number = copy.m_serial_number;
|
||||||
m_custom_data = copy.m_custom_data;
|
m_custom_data = copy.m_custom_data;
|
||||||
m_timers = copy.m_timers;
|
m_timers = copy.m_timers;
|
||||||
|
|
||||||
@@ -610,7 +632,7 @@ bool EQ::ItemInstance::UpdateOrnamentationInfo() {
|
|||||||
SetOrnamentHeroModel(ornamentItem->HerosForgeModel);
|
SetOrnamentHeroModel(ornamentItem->HerosForgeModel);
|
||||||
if (strlen(ornamentItem->IDFile) > 2)
|
if (strlen(ornamentItem->IDFile) > 2)
|
||||||
{
|
{
|
||||||
SetOrnamentationIDFile(atoi(&ornamentItem->IDFile[2]));
|
SetOrnamentationIDFile(Strings::ToInt(&ornamentItem->IDFile[2]));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -69,9 +69,9 @@ namespace EQ
|
|||||||
/////////////////////////
|
/////////////////////////
|
||||||
|
|
||||||
// Constructors/Destructor
|
// Constructors/Destructor
|
||||||
ItemInstance(const ItemData* item = nullptr, int16 charges = 0);
|
ItemInstance(const ItemData* item, const std::string& guid, int16 charges);
|
||||||
|
|
||||||
ItemInstance(SharedDatabase *db, uint32 item_id, int16 charges = 0);
|
ItemInstance(SharedDatabase *db, uint32 item_id, const std::string &guid, int16 charges);
|
||||||
|
|
||||||
ItemInstance(ItemInstTypes use_type);
|
ItemInstance(ItemInstTypes use_type);
|
||||||
|
|
||||||
@@ -79,6 +79,8 @@ namespace EQ
|
|||||||
|
|
||||||
~ItemInstance();
|
~ItemInstance();
|
||||||
|
|
||||||
|
inline std::string GetGuid() const { return m_guid; }
|
||||||
|
|
||||||
// Query item type
|
// Query item type
|
||||||
bool IsType(item::ItemClass item_class) const;
|
bool IsType(item::ItemClass item_class) const;
|
||||||
|
|
||||||
@@ -225,8 +227,8 @@ namespace EQ
|
|||||||
std::string Serialize(int16 slot_id) const { InternalSerializedItem_Struct s; s.slot_id = slot_id; s.inst = (const void*)this; std::string ser; ser.assign((char*)&s, sizeof(InternalSerializedItem_Struct)); return ser; }
|
std::string Serialize(int16 slot_id) const { InternalSerializedItem_Struct s; s.slot_id = slot_id; s.inst = (const void*)this; std::string ser; ser.assign((char*)&s, sizeof(InternalSerializedItem_Struct)); return ser; }
|
||||||
void Serialize(OutBuffer& ob, int16 slot_id) const { InternalSerializedItem_Struct isi; isi.slot_id = slot_id; isi.inst = (const void*)this; ob.write((const char*)&isi, sizeof(isi)); }
|
void Serialize(OutBuffer& ob, int16 slot_id) const { InternalSerializedItem_Struct isi; isi.slot_id = slot_id; isi.inst = (const void*)this; ob.write((const char*)&isi, sizeof(isi)); }
|
||||||
|
|
||||||
inline int32 GetSerialNumber() const { return m_SerialNumber; }
|
inline int32 GetSerialNumber() const { return m_serial_number; }
|
||||||
inline void SetSerialNumber(int32 id) { m_SerialNumber = id; }
|
inline void SetSerialNumber(int32 id) { m_serial_number = id; }
|
||||||
|
|
||||||
std::map<std::string, ::Timer>& GetTimers() { return m_timers; }
|
std::map<std::string, ::Timer>& GetTimers() { return m_timers; }
|
||||||
void SetTimer(std::string name, uint32 time);
|
void SetTimer(std::string name, uint32 time);
|
||||||
@@ -303,6 +305,7 @@ namespace EQ
|
|||||||
|
|
||||||
void _PutItem(uint8 index, ItemInstance* inst) { m_contents[index] = inst; }
|
void _PutItem(uint8 index, ItemInstance* inst) { m_contents[index] = inst; }
|
||||||
|
|
||||||
|
std::string m_guid;
|
||||||
ItemInstTypes m_use_type; // Usage type for item
|
ItemInstTypes m_use_type; // Usage type for item
|
||||||
const ItemData* m_item; // Ptr to item data
|
const ItemData* m_item; // Ptr to item data
|
||||||
int16 m_charges; // # of charges for chargeable items
|
int16 m_charges; // # of charges for chargeable items
|
||||||
@@ -312,7 +315,7 @@ namespace EQ
|
|||||||
int16 m_currentslot;
|
int16 m_currentslot;
|
||||||
bool m_attuned;
|
bool m_attuned;
|
||||||
int32 m_merchantcount; //number avaliable on the merchant, -1=unlimited
|
int32 m_merchantcount; //number avaliable on the merchant, -1=unlimited
|
||||||
int32 m_SerialNumber; // Unique identifier for this instance of an item. Needed for Bazaar.
|
uint32 m_serial_number; // Unique identifier for this instance of an item. Needed for Bazaar.
|
||||||
uint32 m_exp;
|
uint32 m_exp;
|
||||||
int8 m_evolveLvl;
|
int8 m_evolveLvl;
|
||||||
bool m_activated;
|
bool m_activated;
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ namespace cereal
|
|||||||
@param indentChar The type of character to indent with
|
@param indentChar The type of character to indent with
|
||||||
@param indentLength The number of indentChar to use for indentation
|
@param indentLength The number of indentChar to use for indentation
|
||||||
(0 corresponds to no indentation) */
|
(0 corresponds to no indentation) */
|
||||||
explicit Options( int precision = JSONWriterSL::Writer::kDefaultMaxDecimalPlaces,
|
explicit Options( int precision = 324,
|
||||||
IndentChar indentChar = IndentChar::space,
|
IndentChar indentChar = IndentChar::space,
|
||||||
unsigned int indentLength = 4,
|
unsigned int indentLength = 4,
|
||||||
bool singleLine = false) :
|
bool singleLine = false) :
|
||||||
|
|||||||
+2
-1
@@ -18,6 +18,7 @@
|
|||||||
#include "misc.h"
|
#include "misc.h"
|
||||||
#include "types.h"
|
#include "types.h"
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
#include "strings.h"
|
||||||
|
|
||||||
std::map<int,std::string> DBFieldNames;
|
std::map<int,std::string> DBFieldNames;
|
||||||
|
|
||||||
@@ -150,7 +151,7 @@ static char *temp=nullptr;
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
ptr++;
|
ptr++;
|
||||||
uint32 id = atoi(field[id_pos].c_str());
|
uint32 id = Strings::ToInt(field[id_pos].c_str());
|
||||||
items[id]=field;
|
items[id]=field;
|
||||||
|
|
||||||
for(i=0;i<10;i++) {
|
for(i=0;i<10;i++) {
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
#include "misc_functions.h"
|
#include "misc_functions.h"
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
#include "strings.h"
|
||||||
|
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
@@ -130,7 +131,7 @@ bool ParseAddress(const char* iAddress, uint32* oIP, uint16* oPort, char* errbuf
|
|||||||
if (*oIP == 0)
|
if (*oIP == 0)
|
||||||
return false;
|
return false;
|
||||||
if (oPort)
|
if (oPort)
|
||||||
*oPort = atoi(sep.arg[1]);
|
*oPort = Strings::ToInt(sep.arg[1]);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -2095,13 +2095,13 @@ namespace SoF
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
val = atoi(&emu->lastName[2]);
|
val = Strings::ToInt(&emu->lastName[2]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sep[0] = nullptr;
|
sep[0] = nullptr;
|
||||||
ofs = atoi(&emu->lastName[2]);
|
ofs = Strings::ToInt(&emu->lastName[2]);
|
||||||
sep[0] = '=';
|
sep[0] = '=';
|
||||||
if ((sep[1] < '0') || (sep[1] > '9'))
|
if ((sep[1] < '0') || (sep[1] > '9'))
|
||||||
{
|
{
|
||||||
@@ -2109,7 +2109,7 @@ namespace SoF
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
val = atoi(&sep[1]);
|
val = Strings::ToInt(&sep[1]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -288,7 +288,7 @@ bool PTimerList::Load(Database *db) {
|
|||||||
PersistentTimer *cur;
|
PersistentTimer *cur;
|
||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
type = atoi(row[0]);
|
type = Strings::ToInt(row[0]);
|
||||||
start_time = strtoul(row[1], nullptr, 10);
|
start_time = strtoul(row[1], nullptr, 10);
|
||||||
timer_time = strtoul(row[2], nullptr, 10);
|
timer_time = strtoul(row[2], nullptr, 10);
|
||||||
enabled = (row[3][0] == '1');
|
enabled = (row[3][0] == '1');
|
||||||
|
|||||||
@@ -69,6 +69,7 @@ public:
|
|||||||
int32_t expansion_bitmask;
|
int32_t expansion_bitmask;
|
||||||
uint8_t enforce_spell_settings;
|
uint8_t enforce_spell_settings;
|
||||||
uint8_t archery_setting;
|
uint8_t archery_setting;
|
||||||
|
uint32_t caster_range;
|
||||||
};
|
};
|
||||||
|
|
||||||
static std::string PrimaryKey()
|
static std::string PrimaryKey()
|
||||||
@@ -129,6 +130,7 @@ public:
|
|||||||
"expansion_bitmask",
|
"expansion_bitmask",
|
||||||
"enforce_spell_settings",
|
"enforce_spell_settings",
|
||||||
"archery_setting",
|
"archery_setting",
|
||||||
|
"caster_range",
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -185,6 +187,7 @@ public:
|
|||||||
"expansion_bitmask",
|
"expansion_bitmask",
|
||||||
"enforce_spell_settings",
|
"enforce_spell_settings",
|
||||||
"archery_setting",
|
"archery_setting",
|
||||||
|
"caster_range",
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -275,6 +278,7 @@ public:
|
|||||||
e.expansion_bitmask = -1;
|
e.expansion_bitmask = -1;
|
||||||
e.enforce_spell_settings = 0;
|
e.enforce_spell_settings = 0;
|
||||||
e.archery_setting = 0;
|
e.archery_setting = 0;
|
||||||
|
e.caster_range = 0;
|
||||||
|
|
||||||
return e;
|
return e;
|
||||||
}
|
}
|
||||||
@@ -361,6 +365,7 @@ public:
|
|||||||
e.expansion_bitmask = static_cast<int32_t>(atoi(row[47]));
|
e.expansion_bitmask = static_cast<int32_t>(atoi(row[47]));
|
||||||
e.enforce_spell_settings = static_cast<uint8_t>(strtoul(row[48], nullptr, 10));
|
e.enforce_spell_settings = static_cast<uint8_t>(strtoul(row[48], nullptr, 10));
|
||||||
e.archery_setting = static_cast<uint8_t>(strtoul(row[49], nullptr, 10));
|
e.archery_setting = static_cast<uint8_t>(strtoul(row[49], nullptr, 10));
|
||||||
|
e.caster_range = static_cast<uint32_t>(strtoul(row[50], nullptr, 10));
|
||||||
|
|
||||||
return e;
|
return e;
|
||||||
}
|
}
|
||||||
@@ -443,6 +448,7 @@ public:
|
|||||||
v.push_back(columns[47] + " = " + std::to_string(e.expansion_bitmask));
|
v.push_back(columns[47] + " = " + std::to_string(e.expansion_bitmask));
|
||||||
v.push_back(columns[48] + " = " + std::to_string(e.enforce_spell_settings));
|
v.push_back(columns[48] + " = " + std::to_string(e.enforce_spell_settings));
|
||||||
v.push_back(columns[49] + " = " + std::to_string(e.archery_setting));
|
v.push_back(columns[49] + " = " + std::to_string(e.archery_setting));
|
||||||
|
v.push_back(columns[50] + " = " + std::to_string(e.caster_range));
|
||||||
|
|
||||||
auto results = db.QueryDatabase(
|
auto results = db.QueryDatabase(
|
||||||
fmt::format(
|
fmt::format(
|
||||||
@@ -514,6 +520,7 @@ public:
|
|||||||
v.push_back(std::to_string(e.expansion_bitmask));
|
v.push_back(std::to_string(e.expansion_bitmask));
|
||||||
v.push_back(std::to_string(e.enforce_spell_settings));
|
v.push_back(std::to_string(e.enforce_spell_settings));
|
||||||
v.push_back(std::to_string(e.archery_setting));
|
v.push_back(std::to_string(e.archery_setting));
|
||||||
|
v.push_back(std::to_string(e.caster_range));
|
||||||
|
|
||||||
auto results = db.QueryDatabase(
|
auto results = db.QueryDatabase(
|
||||||
fmt::format(
|
fmt::format(
|
||||||
@@ -593,6 +600,7 @@ public:
|
|||||||
v.push_back(std::to_string(e.expansion_bitmask));
|
v.push_back(std::to_string(e.expansion_bitmask));
|
||||||
v.push_back(std::to_string(e.enforce_spell_settings));
|
v.push_back(std::to_string(e.enforce_spell_settings));
|
||||||
v.push_back(std::to_string(e.archery_setting));
|
v.push_back(std::to_string(e.archery_setting));
|
||||||
|
v.push_back(std::to_string(e.caster_range));
|
||||||
|
|
||||||
insert_chunks.push_back("(" + Strings::Implode(",", v) + ")");
|
insert_chunks.push_back("(" + Strings::Implode(",", v) + ")");
|
||||||
}
|
}
|
||||||
@@ -676,6 +684,7 @@ public:
|
|||||||
e.expansion_bitmask = static_cast<int32_t>(atoi(row[47]));
|
e.expansion_bitmask = static_cast<int32_t>(atoi(row[47]));
|
||||||
e.enforce_spell_settings = static_cast<uint8_t>(strtoul(row[48], nullptr, 10));
|
e.enforce_spell_settings = static_cast<uint8_t>(strtoul(row[48], nullptr, 10));
|
||||||
e.archery_setting = static_cast<uint8_t>(strtoul(row[49], nullptr, 10));
|
e.archery_setting = static_cast<uint8_t>(strtoul(row[49], nullptr, 10));
|
||||||
|
e.caster_range = static_cast<uint32_t>(strtoul(row[50], nullptr, 10));
|
||||||
|
|
||||||
all_entries.push_back(e);
|
all_entries.push_back(e);
|
||||||
}
|
}
|
||||||
@@ -750,6 +759,7 @@ public:
|
|||||||
e.expansion_bitmask = static_cast<int32_t>(atoi(row[47]));
|
e.expansion_bitmask = static_cast<int32_t>(atoi(row[47]));
|
||||||
e.enforce_spell_settings = static_cast<uint8_t>(strtoul(row[48], nullptr, 10));
|
e.enforce_spell_settings = static_cast<uint8_t>(strtoul(row[48], nullptr, 10));
|
||||||
e.archery_setting = static_cast<uint8_t>(strtoul(row[49], nullptr, 10));
|
e.archery_setting = static_cast<uint8_t>(strtoul(row[49], nullptr, 10));
|
||||||
|
e.caster_range = static_cast<uint32_t>(strtoul(row[50], nullptr, 10));
|
||||||
|
|
||||||
all_entries.push_back(e);
|
all_entries.push_back(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,11 +16,14 @@
|
|||||||
#include "../../strings.h"
|
#include "../../strings.h"
|
||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
||||||
|
|
||||||
class BaseNpcScaleGlobalBaseRepository {
|
class BaseNpcScaleGlobalBaseRepository {
|
||||||
public:
|
public:
|
||||||
struct NpcScaleGlobalBase {
|
struct NpcScaleGlobalBase {
|
||||||
int32_t type;
|
int32_t type;
|
||||||
int32_t level;
|
int32_t level;
|
||||||
|
std::string zone_id_list;
|
||||||
|
std::string instance_version_list;
|
||||||
int32_t ac;
|
int32_t ac;
|
||||||
int32_t hp;
|
int32_t hp;
|
||||||
int32_t accuracy;
|
int32_t accuracy;
|
||||||
@@ -59,6 +62,8 @@ public:
|
|||||||
return {
|
return {
|
||||||
"type",
|
"type",
|
||||||
"level",
|
"level",
|
||||||
|
"zone_id_list",
|
||||||
|
"instance_version_list",
|
||||||
"ac",
|
"ac",
|
||||||
"hp",
|
"hp",
|
||||||
"accuracy",
|
"accuracy",
|
||||||
@@ -93,6 +98,8 @@ public:
|
|||||||
return {
|
return {
|
||||||
"type",
|
"type",
|
||||||
"level",
|
"level",
|
||||||
|
"zone_id_list",
|
||||||
|
"instance_version_list",
|
||||||
"ac",
|
"ac",
|
||||||
"hp",
|
"hp",
|
||||||
"accuracy",
|
"accuracy",
|
||||||
@@ -161,6 +168,8 @@ public:
|
|||||||
|
|
||||||
e.type = 0;
|
e.type = 0;
|
||||||
e.level = 0;
|
e.level = 0;
|
||||||
|
e.zone_id_list = "";
|
||||||
|
e.instance_version_list = "";
|
||||||
e.ac = 0;
|
e.ac = 0;
|
||||||
e.hp = 0;
|
e.hp = 0;
|
||||||
e.accuracy = 0;
|
e.accuracy = 0;
|
||||||
@@ -212,8 +221,9 @@ public:
|
|||||||
{
|
{
|
||||||
auto results = db.QueryDatabase(
|
auto results = db.QueryDatabase(
|
||||||
fmt::format(
|
fmt::format(
|
||||||
"{} WHERE id = {} LIMIT 1",
|
"{} WHERE {} = {} LIMIT 1",
|
||||||
BaseSelect(),
|
BaseSelect(),
|
||||||
|
PrimaryKey(),
|
||||||
npc_scale_global_base_id
|
npc_scale_global_base_id
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
@@ -224,32 +234,34 @@ public:
|
|||||||
|
|
||||||
e.type = static_cast<int32_t>(atoi(row[0]));
|
e.type = static_cast<int32_t>(atoi(row[0]));
|
||||||
e.level = static_cast<int32_t>(atoi(row[1]));
|
e.level = static_cast<int32_t>(atoi(row[1]));
|
||||||
e.ac = static_cast<int32_t>(atoi(row[2]));
|
e.zone_id_list = row[2] ? row[2] : "";
|
||||||
e.hp = static_cast<int32_t>(atoi(row[3]));
|
e.instance_version_list = row[3] ? row[3] : "";
|
||||||
e.accuracy = static_cast<int32_t>(atoi(row[4]));
|
e.ac = static_cast<int32_t>(atoi(row[4]));
|
||||||
e.slow_mitigation = static_cast<int32_t>(atoi(row[5]));
|
e.hp = static_cast<int32_t>(atoi(row[5]));
|
||||||
e.attack = static_cast<int32_t>(atoi(row[6]));
|
e.accuracy = static_cast<int32_t>(atoi(row[6]));
|
||||||
e.strength = static_cast<int32_t>(atoi(row[7]));
|
e.slow_mitigation = static_cast<int32_t>(atoi(row[7]));
|
||||||
e.stamina = static_cast<int32_t>(atoi(row[8]));
|
e.attack = static_cast<int32_t>(atoi(row[8]));
|
||||||
e.dexterity = static_cast<int32_t>(atoi(row[9]));
|
e.strength = static_cast<int32_t>(atoi(row[9]));
|
||||||
e.agility = static_cast<int32_t>(atoi(row[10]));
|
e.stamina = static_cast<int32_t>(atoi(row[10]));
|
||||||
e.intelligence = static_cast<int32_t>(atoi(row[11]));
|
e.dexterity = static_cast<int32_t>(atoi(row[11]));
|
||||||
e.wisdom = static_cast<int32_t>(atoi(row[12]));
|
e.agility = static_cast<int32_t>(atoi(row[12]));
|
||||||
e.charisma = static_cast<int32_t>(atoi(row[13]));
|
e.intelligence = static_cast<int32_t>(atoi(row[13]));
|
||||||
e.magic_resist = static_cast<int32_t>(atoi(row[14]));
|
e.wisdom = static_cast<int32_t>(atoi(row[14]));
|
||||||
e.cold_resist = static_cast<int32_t>(atoi(row[15]));
|
e.charisma = static_cast<int32_t>(atoi(row[15]));
|
||||||
e.fire_resist = static_cast<int32_t>(atoi(row[16]));
|
e.magic_resist = static_cast<int32_t>(atoi(row[16]));
|
||||||
e.poison_resist = static_cast<int32_t>(atoi(row[17]));
|
e.cold_resist = static_cast<int32_t>(atoi(row[17]));
|
||||||
e.disease_resist = static_cast<int32_t>(atoi(row[18]));
|
e.fire_resist = static_cast<int32_t>(atoi(row[18]));
|
||||||
e.corruption_resist = static_cast<int32_t>(atoi(row[19]));
|
e.poison_resist = static_cast<int32_t>(atoi(row[19]));
|
||||||
e.physical_resist = static_cast<int32_t>(atoi(row[20]));
|
e.disease_resist = static_cast<int32_t>(atoi(row[20]));
|
||||||
e.min_dmg = static_cast<int32_t>(atoi(row[21]));
|
e.corruption_resist = static_cast<int32_t>(atoi(row[21]));
|
||||||
e.max_dmg = static_cast<int32_t>(atoi(row[22]));
|
e.physical_resist = static_cast<int32_t>(atoi(row[22]));
|
||||||
e.hp_regen_rate = static_cast<int32_t>(atoi(row[23]));
|
e.min_dmg = static_cast<int32_t>(atoi(row[23]));
|
||||||
e.attack_delay = static_cast<int32_t>(atoi(row[24]));
|
e.max_dmg = static_cast<int32_t>(atoi(row[24]));
|
||||||
e.spell_scale = static_cast<int32_t>(atoi(row[25]));
|
e.hp_regen_rate = static_cast<int32_t>(atoi(row[25]));
|
||||||
e.heal_scale = static_cast<int32_t>(atoi(row[26]));
|
e.attack_delay = static_cast<int32_t>(atoi(row[26]));
|
||||||
e.special_abilities = row[27] ? row[27] : "";
|
e.spell_scale = static_cast<int32_t>(atoi(row[27]));
|
||||||
|
e.heal_scale = static_cast<int32_t>(atoi(row[28]));
|
||||||
|
e.special_abilities = row[29] ? row[29] : "";
|
||||||
|
|
||||||
return e;
|
return e;
|
||||||
}
|
}
|
||||||
@@ -285,32 +297,34 @@ public:
|
|||||||
|
|
||||||
v.push_back(columns[0] + " = " + std::to_string(e.type));
|
v.push_back(columns[0] + " = " + std::to_string(e.type));
|
||||||
v.push_back(columns[1] + " = " + std::to_string(e.level));
|
v.push_back(columns[1] + " = " + std::to_string(e.level));
|
||||||
v.push_back(columns[2] + " = " + std::to_string(e.ac));
|
v.push_back(columns[2] + " = '" + Strings::Escape(e.zone_id_list) + "'");
|
||||||
v.push_back(columns[3] + " = " + std::to_string(e.hp));
|
v.push_back(columns[3] + " = '" + Strings::Escape(e.instance_version_list) + "'");
|
||||||
v.push_back(columns[4] + " = " + std::to_string(e.accuracy));
|
v.push_back(columns[4] + " = " + std::to_string(e.ac));
|
||||||
v.push_back(columns[5] + " = " + std::to_string(e.slow_mitigation));
|
v.push_back(columns[5] + " = " + std::to_string(e.hp));
|
||||||
v.push_back(columns[6] + " = " + std::to_string(e.attack));
|
v.push_back(columns[6] + " = " + std::to_string(e.accuracy));
|
||||||
v.push_back(columns[7] + " = " + std::to_string(e.strength));
|
v.push_back(columns[7] + " = " + std::to_string(e.slow_mitigation));
|
||||||
v.push_back(columns[8] + " = " + std::to_string(e.stamina));
|
v.push_back(columns[8] + " = " + std::to_string(e.attack));
|
||||||
v.push_back(columns[9] + " = " + std::to_string(e.dexterity));
|
v.push_back(columns[9] + " = " + std::to_string(e.strength));
|
||||||
v.push_back(columns[10] + " = " + std::to_string(e.agility));
|
v.push_back(columns[10] + " = " + std::to_string(e.stamina));
|
||||||
v.push_back(columns[11] + " = " + std::to_string(e.intelligence));
|
v.push_back(columns[11] + " = " + std::to_string(e.dexterity));
|
||||||
v.push_back(columns[12] + " = " + std::to_string(e.wisdom));
|
v.push_back(columns[12] + " = " + std::to_string(e.agility));
|
||||||
v.push_back(columns[13] + " = " + std::to_string(e.charisma));
|
v.push_back(columns[13] + " = " + std::to_string(e.intelligence));
|
||||||
v.push_back(columns[14] + " = " + std::to_string(e.magic_resist));
|
v.push_back(columns[14] + " = " + std::to_string(e.wisdom));
|
||||||
v.push_back(columns[15] + " = " + std::to_string(e.cold_resist));
|
v.push_back(columns[15] + " = " + std::to_string(e.charisma));
|
||||||
v.push_back(columns[16] + " = " + std::to_string(e.fire_resist));
|
v.push_back(columns[16] + " = " + std::to_string(e.magic_resist));
|
||||||
v.push_back(columns[17] + " = " + std::to_string(e.poison_resist));
|
v.push_back(columns[17] + " = " + std::to_string(e.cold_resist));
|
||||||
v.push_back(columns[18] + " = " + std::to_string(e.disease_resist));
|
v.push_back(columns[18] + " = " + std::to_string(e.fire_resist));
|
||||||
v.push_back(columns[19] + " = " + std::to_string(e.corruption_resist));
|
v.push_back(columns[19] + " = " + std::to_string(e.poison_resist));
|
||||||
v.push_back(columns[20] + " = " + std::to_string(e.physical_resist));
|
v.push_back(columns[20] + " = " + std::to_string(e.disease_resist));
|
||||||
v.push_back(columns[21] + " = " + std::to_string(e.min_dmg));
|
v.push_back(columns[21] + " = " + std::to_string(e.corruption_resist));
|
||||||
v.push_back(columns[22] + " = " + std::to_string(e.max_dmg));
|
v.push_back(columns[22] + " = " + std::to_string(e.physical_resist));
|
||||||
v.push_back(columns[23] + " = " + std::to_string(e.hp_regen_rate));
|
v.push_back(columns[23] + " = " + std::to_string(e.min_dmg));
|
||||||
v.push_back(columns[24] + " = " + std::to_string(e.attack_delay));
|
v.push_back(columns[24] + " = " + std::to_string(e.max_dmg));
|
||||||
v.push_back(columns[25] + " = " + std::to_string(e.spell_scale));
|
v.push_back(columns[25] + " = " + std::to_string(e.hp_regen_rate));
|
||||||
v.push_back(columns[26] + " = " + std::to_string(e.heal_scale));
|
v.push_back(columns[26] + " = " + std::to_string(e.attack_delay));
|
||||||
v.push_back(columns[27] + " = '" + Strings::Escape(e.special_abilities) + "'");
|
v.push_back(columns[27] + " = " + std::to_string(e.spell_scale));
|
||||||
|
v.push_back(columns[28] + " = " + std::to_string(e.heal_scale));
|
||||||
|
v.push_back(columns[29] + " = '" + Strings::Escape(e.special_abilities) + "'");
|
||||||
|
|
||||||
auto results = db.QueryDatabase(
|
auto results = db.QueryDatabase(
|
||||||
fmt::format(
|
fmt::format(
|
||||||
@@ -334,6 +348,8 @@ public:
|
|||||||
|
|
||||||
v.push_back(std::to_string(e.type));
|
v.push_back(std::to_string(e.type));
|
||||||
v.push_back(std::to_string(e.level));
|
v.push_back(std::to_string(e.level));
|
||||||
|
v.push_back("'" + Strings::Escape(e.zone_id_list) + "'");
|
||||||
|
v.push_back("'" + Strings::Escape(e.instance_version_list) + "'");
|
||||||
v.push_back(std::to_string(e.ac));
|
v.push_back(std::to_string(e.ac));
|
||||||
v.push_back(std::to_string(e.hp));
|
v.push_back(std::to_string(e.hp));
|
||||||
v.push_back(std::to_string(e.accuracy));
|
v.push_back(std::to_string(e.accuracy));
|
||||||
@@ -391,6 +407,8 @@ public:
|
|||||||
|
|
||||||
v.push_back(std::to_string(e.type));
|
v.push_back(std::to_string(e.type));
|
||||||
v.push_back(std::to_string(e.level));
|
v.push_back(std::to_string(e.level));
|
||||||
|
v.push_back("'" + Strings::Escape(e.zone_id_list) + "'");
|
||||||
|
v.push_back("'" + Strings::Escape(e.instance_version_list) + "'");
|
||||||
v.push_back(std::to_string(e.ac));
|
v.push_back(std::to_string(e.ac));
|
||||||
v.push_back(std::to_string(e.hp));
|
v.push_back(std::to_string(e.hp));
|
||||||
v.push_back(std::to_string(e.accuracy));
|
v.push_back(std::to_string(e.accuracy));
|
||||||
@@ -452,32 +470,34 @@ public:
|
|||||||
|
|
||||||
e.type = static_cast<int32_t>(atoi(row[0]));
|
e.type = static_cast<int32_t>(atoi(row[0]));
|
||||||
e.level = static_cast<int32_t>(atoi(row[1]));
|
e.level = static_cast<int32_t>(atoi(row[1]));
|
||||||
e.ac = static_cast<int32_t>(atoi(row[2]));
|
e.zone_id_list = row[2] ? row[2] : "";
|
||||||
e.hp = static_cast<int32_t>(atoi(row[3]));
|
e.instance_version_list = row[3] ? row[3] : "";
|
||||||
e.accuracy = static_cast<int32_t>(atoi(row[4]));
|
e.ac = static_cast<int32_t>(atoi(row[4]));
|
||||||
e.slow_mitigation = static_cast<int32_t>(atoi(row[5]));
|
e.hp = static_cast<int32_t>(atoi(row[5]));
|
||||||
e.attack = static_cast<int32_t>(atoi(row[6]));
|
e.accuracy = static_cast<int32_t>(atoi(row[6]));
|
||||||
e.strength = static_cast<int32_t>(atoi(row[7]));
|
e.slow_mitigation = static_cast<int32_t>(atoi(row[7]));
|
||||||
e.stamina = static_cast<int32_t>(atoi(row[8]));
|
e.attack = static_cast<int32_t>(atoi(row[8]));
|
||||||
e.dexterity = static_cast<int32_t>(atoi(row[9]));
|
e.strength = static_cast<int32_t>(atoi(row[9]));
|
||||||
e.agility = static_cast<int32_t>(atoi(row[10]));
|
e.stamina = static_cast<int32_t>(atoi(row[10]));
|
||||||
e.intelligence = static_cast<int32_t>(atoi(row[11]));
|
e.dexterity = static_cast<int32_t>(atoi(row[11]));
|
||||||
e.wisdom = static_cast<int32_t>(atoi(row[12]));
|
e.agility = static_cast<int32_t>(atoi(row[12]));
|
||||||
e.charisma = static_cast<int32_t>(atoi(row[13]));
|
e.intelligence = static_cast<int32_t>(atoi(row[13]));
|
||||||
e.magic_resist = static_cast<int32_t>(atoi(row[14]));
|
e.wisdom = static_cast<int32_t>(atoi(row[14]));
|
||||||
e.cold_resist = static_cast<int32_t>(atoi(row[15]));
|
e.charisma = static_cast<int32_t>(atoi(row[15]));
|
||||||
e.fire_resist = static_cast<int32_t>(atoi(row[16]));
|
e.magic_resist = static_cast<int32_t>(atoi(row[16]));
|
||||||
e.poison_resist = static_cast<int32_t>(atoi(row[17]));
|
e.cold_resist = static_cast<int32_t>(atoi(row[17]));
|
||||||
e.disease_resist = static_cast<int32_t>(atoi(row[18]));
|
e.fire_resist = static_cast<int32_t>(atoi(row[18]));
|
||||||
e.corruption_resist = static_cast<int32_t>(atoi(row[19]));
|
e.poison_resist = static_cast<int32_t>(atoi(row[19]));
|
||||||
e.physical_resist = static_cast<int32_t>(atoi(row[20]));
|
e.disease_resist = static_cast<int32_t>(atoi(row[20]));
|
||||||
e.min_dmg = static_cast<int32_t>(atoi(row[21]));
|
e.corruption_resist = static_cast<int32_t>(atoi(row[21]));
|
||||||
e.max_dmg = static_cast<int32_t>(atoi(row[22]));
|
e.physical_resist = static_cast<int32_t>(atoi(row[22]));
|
||||||
e.hp_regen_rate = static_cast<int32_t>(atoi(row[23]));
|
e.min_dmg = static_cast<int32_t>(atoi(row[23]));
|
||||||
e.attack_delay = static_cast<int32_t>(atoi(row[24]));
|
e.max_dmg = static_cast<int32_t>(atoi(row[24]));
|
||||||
e.spell_scale = static_cast<int32_t>(atoi(row[25]));
|
e.hp_regen_rate = static_cast<int32_t>(atoi(row[25]));
|
||||||
e.heal_scale = static_cast<int32_t>(atoi(row[26]));
|
e.attack_delay = static_cast<int32_t>(atoi(row[26]));
|
||||||
e.special_abilities = row[27] ? row[27] : "";
|
e.spell_scale = static_cast<int32_t>(atoi(row[27]));
|
||||||
|
e.heal_scale = static_cast<int32_t>(atoi(row[28]));
|
||||||
|
e.special_abilities = row[29] ? row[29] : "";
|
||||||
|
|
||||||
all_entries.push_back(e);
|
all_entries.push_back(e);
|
||||||
}
|
}
|
||||||
@@ -504,32 +524,34 @@ public:
|
|||||||
|
|
||||||
e.type = static_cast<int32_t>(atoi(row[0]));
|
e.type = static_cast<int32_t>(atoi(row[0]));
|
||||||
e.level = static_cast<int32_t>(atoi(row[1]));
|
e.level = static_cast<int32_t>(atoi(row[1]));
|
||||||
e.ac = static_cast<int32_t>(atoi(row[2]));
|
e.zone_id_list = row[2] ? row[2] : "";
|
||||||
e.hp = static_cast<int32_t>(atoi(row[3]));
|
e.instance_version_list = row[3] ? row[3] : "";
|
||||||
e.accuracy = static_cast<int32_t>(atoi(row[4]));
|
e.ac = static_cast<int32_t>(atoi(row[4]));
|
||||||
e.slow_mitigation = static_cast<int32_t>(atoi(row[5]));
|
e.hp = static_cast<int32_t>(atoi(row[5]));
|
||||||
e.attack = static_cast<int32_t>(atoi(row[6]));
|
e.accuracy = static_cast<int32_t>(atoi(row[6]));
|
||||||
e.strength = static_cast<int32_t>(atoi(row[7]));
|
e.slow_mitigation = static_cast<int32_t>(atoi(row[7]));
|
||||||
e.stamina = static_cast<int32_t>(atoi(row[8]));
|
e.attack = static_cast<int32_t>(atoi(row[8]));
|
||||||
e.dexterity = static_cast<int32_t>(atoi(row[9]));
|
e.strength = static_cast<int32_t>(atoi(row[9]));
|
||||||
e.agility = static_cast<int32_t>(atoi(row[10]));
|
e.stamina = static_cast<int32_t>(atoi(row[10]));
|
||||||
e.intelligence = static_cast<int32_t>(atoi(row[11]));
|
e.dexterity = static_cast<int32_t>(atoi(row[11]));
|
||||||
e.wisdom = static_cast<int32_t>(atoi(row[12]));
|
e.agility = static_cast<int32_t>(atoi(row[12]));
|
||||||
e.charisma = static_cast<int32_t>(atoi(row[13]));
|
e.intelligence = static_cast<int32_t>(atoi(row[13]));
|
||||||
e.magic_resist = static_cast<int32_t>(atoi(row[14]));
|
e.wisdom = static_cast<int32_t>(atoi(row[14]));
|
||||||
e.cold_resist = static_cast<int32_t>(atoi(row[15]));
|
e.charisma = static_cast<int32_t>(atoi(row[15]));
|
||||||
e.fire_resist = static_cast<int32_t>(atoi(row[16]));
|
e.magic_resist = static_cast<int32_t>(atoi(row[16]));
|
||||||
e.poison_resist = static_cast<int32_t>(atoi(row[17]));
|
e.cold_resist = static_cast<int32_t>(atoi(row[17]));
|
||||||
e.disease_resist = static_cast<int32_t>(atoi(row[18]));
|
e.fire_resist = static_cast<int32_t>(atoi(row[18]));
|
||||||
e.corruption_resist = static_cast<int32_t>(atoi(row[19]));
|
e.poison_resist = static_cast<int32_t>(atoi(row[19]));
|
||||||
e.physical_resist = static_cast<int32_t>(atoi(row[20]));
|
e.disease_resist = static_cast<int32_t>(atoi(row[20]));
|
||||||
e.min_dmg = static_cast<int32_t>(atoi(row[21]));
|
e.corruption_resist = static_cast<int32_t>(atoi(row[21]));
|
||||||
e.max_dmg = static_cast<int32_t>(atoi(row[22]));
|
e.physical_resist = static_cast<int32_t>(atoi(row[22]));
|
||||||
e.hp_regen_rate = static_cast<int32_t>(atoi(row[23]));
|
e.min_dmg = static_cast<int32_t>(atoi(row[23]));
|
||||||
e.attack_delay = static_cast<int32_t>(atoi(row[24]));
|
e.max_dmg = static_cast<int32_t>(atoi(row[24]));
|
||||||
e.spell_scale = static_cast<int32_t>(atoi(row[25]));
|
e.hp_regen_rate = static_cast<int32_t>(atoi(row[25]));
|
||||||
e.heal_scale = static_cast<int32_t>(atoi(row[26]));
|
e.attack_delay = static_cast<int32_t>(atoi(row[26]));
|
||||||
e.special_abilities = row[27] ? row[27] : "";
|
e.spell_scale = static_cast<int32_t>(atoi(row[27]));
|
||||||
|
e.heal_scale = static_cast<int32_t>(atoi(row[28]));
|
||||||
|
e.special_abilities = row[29] ? row[29] : "";
|
||||||
|
|
||||||
all_entries.push_back(e);
|
all_entries.push_back(e);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -240,8 +240,8 @@ public:
|
|||||||
v.push_back(columns[7] + " = " + std::to_string(e.z));
|
v.push_back(columns[7] + " = " + std::to_string(e.z));
|
||||||
v.push_back(columns[8] + " = " + std::to_string(e.heading));
|
v.push_back(columns[8] + " = " + std::to_string(e.heading));
|
||||||
v.push_back(columns[9] + " = " + std::to_string(e.event_type_id));
|
v.push_back(columns[9] + " = " + std::to_string(e.event_type_id));
|
||||||
v.push_back(columns[10] + " = '" + Strings::Escape(e.event_type_name) + "'");
|
v.push_back(columns[10] + " = '" + db.Escape(e.event_type_name) + "'");
|
||||||
v.push_back(columns[11] + " = '" + Strings::Escape(e.event_data) + "'");
|
v.push_back(columns[11] + " = '" + db.Escape(e.event_data) + "'");
|
||||||
v.push_back(columns[12] + " = FROM_UNIXTIME(" + (e.created_at > 0 ? std::to_string(e.created_at) : "null") + ")");
|
v.push_back(columns[12] + " = FROM_UNIXTIME(" + (e.created_at > 0 ? std::to_string(e.created_at) : "null") + ")");
|
||||||
|
|
||||||
auto results = db.QueryDatabase(
|
auto results = db.QueryDatabase(
|
||||||
@@ -274,8 +274,8 @@ public:
|
|||||||
v.push_back(std::to_string(e.z));
|
v.push_back(std::to_string(e.z));
|
||||||
v.push_back(std::to_string(e.heading));
|
v.push_back(std::to_string(e.heading));
|
||||||
v.push_back(std::to_string(e.event_type_id));
|
v.push_back(std::to_string(e.event_type_id));
|
||||||
v.push_back("'" + Strings::Escape(e.event_type_name) + "'");
|
v.push_back("'" + db.Escape(e.event_type_name) + "'");
|
||||||
v.push_back("'" + Strings::Escape(e.event_data) + "'");
|
v.push_back("'" + db.Escape(e.event_data) + "'");
|
||||||
v.push_back("FROM_UNIXTIME(" + (e.created_at > 0 ? std::to_string(e.created_at) : "null") + ")");
|
v.push_back("FROM_UNIXTIME(" + (e.created_at > 0 ? std::to_string(e.created_at) : "null") + ")");
|
||||||
|
|
||||||
auto results = db.QueryDatabase(
|
auto results = db.QueryDatabase(
|
||||||
@@ -316,8 +316,8 @@ public:
|
|||||||
v.push_back(std::to_string(e.z));
|
v.push_back(std::to_string(e.z));
|
||||||
v.push_back(std::to_string(e.heading));
|
v.push_back(std::to_string(e.heading));
|
||||||
v.push_back(std::to_string(e.event_type_id));
|
v.push_back(std::to_string(e.event_type_id));
|
||||||
v.push_back("'" + Strings::Escape(e.event_type_name) + "'");
|
v.push_back("'" + db.Escape(e.event_type_name) + "'");
|
||||||
v.push_back("'" + Strings::Escape(e.event_data) + "'");
|
v.push_back("'" + db.Escape(e.event_data) + "'");
|
||||||
v.push_back("FROM_UNIXTIME(" + (e.created_at > 0 ? std::to_string(e.created_at) : "null") + ")");
|
v.push_back("FROM_UNIXTIME(" + (e.created_at > 0 ? std::to_string(e.created_at) : "null") + ")");
|
||||||
|
|
||||||
insert_chunks.push_back("(" + Strings::Implode(",", v) + ")");
|
insert_chunks.push_back("(" + Strings::Implode(",", v) + ")");
|
||||||
|
|||||||
+2
-2
@@ -141,11 +141,11 @@ bool RuleManager::SetRule(const std::string &rule_name, const std::string &rule_
|
|||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case IntRule:
|
case IntRule:
|
||||||
m_RuleIntValues[index] = atoi(rule_value.c_str());
|
m_RuleIntValues[index] = Strings::ToInt(rule_value.c_str());
|
||||||
LogRules("Set rule [{}] to value [{}]", rule_name, m_RuleIntValues[index]);
|
LogRules("Set rule [{}] to value [{}]", rule_name, m_RuleIntValues[index]);
|
||||||
break;
|
break;
|
||||||
case RealRule:
|
case RealRule:
|
||||||
m_RuleRealValues[index] = atof(rule_value.c_str());
|
m_RuleRealValues[index] = Strings::ToFloat(rule_value.c_str());
|
||||||
LogRules("Set rule [{}] to value [{:.2f}]", rule_name, m_RuleRealValues[index]);
|
LogRules("Set rule [{}] to value [{:.2f}]", rule_name, m_RuleRealValues[index]);
|
||||||
break;
|
break;
|
||||||
case BoolRule:
|
case BoolRule:
|
||||||
|
|||||||
+13
-2
@@ -93,6 +93,12 @@ RULE_INT(Character, ItemEnduranceRegenCap, 15, "Limit on endurance regeneration
|
|||||||
RULE_INT(Character, ItemExtraDmgCap, 150, "Cap for bonuses to melee skills like Bash, Frenzy, etc.")
|
RULE_INT(Character, ItemExtraDmgCap, 150, "Cap for bonuses to melee skills like Bash, Frenzy, etc.")
|
||||||
RULE_INT(Character, HasteCap, 100, "Haste cap for non-v3(over haste) haste")
|
RULE_INT(Character, HasteCap, 100, "Haste cap for non-v3(over haste) haste")
|
||||||
RULE_INT(Character, Hastev3Cap, 25, "Haste cap for v3(over haste) haste")
|
RULE_INT(Character, Hastev3Cap, 25, "Haste cap for v3(over haste) haste")
|
||||||
|
RULE_REAL(Character, HeroicStrengthMultiplier, 1.00, "Multplier scales benefits from Heroic Strength. Grants 25 Base Endurance, 0.05 Endurance Regen, 1 Melee Damage each Hit, and 1 Shield AC per 10 Heroic Strength.")
|
||||||
|
RULE_REAL(Character, HeroicStaminaMultiplier, 1.00, "Multplier scales benefits from Heroic Stamina. Grants 25 Base Endurance, 0.05 Endurance Regen, 100 Base HP, and 0.5 HP Regen per 10 Heroic Stamina.")
|
||||||
|
RULE_REAL(Character, HeroicAgilityMultiplier, 1.00, "Multplier scales benefits from Heroic Agility. Grants 25 Base Endurance, 0.05 Endurance Regen, and 1 Avoidance AC per 10 Heroic Agility. (Rule does not change Dodge Chance)")
|
||||||
|
RULE_REAL(Character, HeroicDexterityMultiplier, 1.00, "Multplier scales benefits from Heroic Dexterity. Grants 25 Base Endurance, 0.05 Endurance Regen, and 1 Archery/Throwing Damage each hit per 10 Heroic Dexterity. (Rule does not change Assassinate/Headshot/Block/Parry/Riposte Chances)")
|
||||||
|
RULE_REAL(Character, HeroicWisdomMultiplier, 1.00, "Multplier scales benefits from Heroic Wisdom. Grants 250 Base Mana, 1 Mana Regen per 25 Heroic Wisdom.")
|
||||||
|
RULE_REAL(Character, HeroicIntelligenceMultiplier, 1.00, "Multplier scales benefits from Heroic Intelligence. Grants 250 Base Mana, 1 Mana Regen per 25 Heroic Intelligence.")
|
||||||
RULE_INT(Character, SkillUpModifier, 100, "The probability for a skill-up is multiplied by value/100")
|
RULE_INT(Character, SkillUpModifier, 100, "The probability for a skill-up is multiplied by value/100")
|
||||||
RULE_BOOL(Character, SharedBankPlat, false, "Shared bank platinum. Off by default to prevent duplication")
|
RULE_BOOL(Character, SharedBankPlat, false, "Shared bank platinum. Off by default to prevent duplication")
|
||||||
RULE_BOOL(Character, BindAnywhere, false, "Allows players to bind their soul anywhere in the world")
|
RULE_BOOL(Character, BindAnywhere, false, "Allows players to bind their soul anywhere in the world")
|
||||||
@@ -197,10 +203,14 @@ RULE_BOOL(Character, PetZoneWithOwner, true, "Should Pets Zone with Owner")
|
|||||||
RULE_BOOL(Character, FullManaOnDeath, true, "On death set mana to full")
|
RULE_BOOL(Character, FullManaOnDeath, true, "On death set mana to full")
|
||||||
RULE_BOOL(Character, FullEndurOnDeath, true, "On death set endurance to full")
|
RULE_BOOL(Character, FullEndurOnDeath, true, "On death set endurance to full")
|
||||||
RULE_INT(Character, ExperiencePercentCapPerKill, -1, "Caps the percentage of experience that can be gained per kill. -1 disables the cap; 0 blocks all (non-aa) xp.")
|
RULE_INT(Character, ExperiencePercentCapPerKill, -1, "Caps the percentage of experience that can be gained per kill. -1 disables the cap; 0 blocks all (non-aa) xp.")
|
||||||
RULE_BOOL(Character, EnableGroupEXPModifier, true, "Enable or disable the group experience modifier based on number of players in group, default is true")
|
RULE_BOOL(Character, EnableGroupEXPModifier, true, "Enable or disable the group experience modifier in group, default is true")
|
||||||
|
RULE_BOOL(Character, EnableGroupMemberEXPModifier, true, "Enable or disable the group member experience modifier based on number of players in group, default is true")
|
||||||
RULE_REAL(Character, GroupMemberEXPModifier, 0.2, "Sets the group experience modifier per members between 2 and 5, default is 0.2")
|
RULE_REAL(Character, GroupMemberEXPModifier, 0.2, "Sets the group experience modifier per members between 2 and 5, default is 0.2")
|
||||||
RULE_REAL(Character, FullGroupEXPModifier, 2.16, "Sets the group experience modifier for a full group, default is 2.16")
|
RULE_REAL(Character, FullGroupEXPModifier, 2.16, "Sets the group experience modifier for a full group, default is 2.16")
|
||||||
RULE_BOOL(Character, IgnoreLevelBasedHasteCaps, false, "Ignores hard coded level based haste caps.")
|
RULE_BOOL(Character, IgnoreLevelBasedHasteCaps, false, "Ignores hard coded level based haste caps.")
|
||||||
|
RULE_BOOL(Character, EnableRaidEXPModifier, true, "Enable or disable the raid experience modifier, default is true")
|
||||||
|
RULE_BOOL(Character, EnableRaidMemberEXPModifier, true, "Enable or disable the raid experience modifier based on members in raid, default is true")
|
||||||
|
RULE_BOOL(Character, LeaveCursorMoneyOnCorpse, false, "Enable or disable leaving cursor money on player corpses")
|
||||||
RULE_CATEGORY_END()
|
RULE_CATEGORY_END()
|
||||||
|
|
||||||
RULE_CATEGORY(Mercs)
|
RULE_CATEGORY(Mercs)
|
||||||
@@ -316,7 +326,6 @@ RULE_CATEGORY_END()
|
|||||||
RULE_CATEGORY(Map)
|
RULE_CATEGORY(Map)
|
||||||
RULE_BOOL(Map, FixPathingZOnSendTo, false, "Try to repair Z coordinates in the SendTo routine as well")
|
RULE_BOOL(Map, FixPathingZOnSendTo, false, "Try to repair Z coordinates in the SendTo routine as well")
|
||||||
RULE_BOOL(Map, FixZWhenPathing, true, "Automatically fix NPC Z coordinates when moving/pathing/engaged (Far less CPU intensive than its predecessor)")
|
RULE_BOOL(Map, FixZWhenPathing, true, "Automatically fix NPC Z coordinates when moving/pathing/engaged (Far less CPU intensive than its predecessor)")
|
||||||
RULE_REAL(Map, DistanceCanTravelBeforeAdjustment, 10.0, "Distance a mob can path before FixZ is called, depends on FixZWhenPathing")
|
|
||||||
RULE_BOOL(Map, MobZVisualDebug, false, "Displays spell effects determining whether or not NPC is hitting Best Z calcs (blue for hit, red for miss)")
|
RULE_BOOL(Map, MobZVisualDebug, false, "Displays spell effects determining whether or not NPC is hitting Best Z calcs (blue for hit, red for miss)")
|
||||||
RULE_BOOL(Map, MobPathingVisualDebug, false, "Displays nodes in pathing points in realtime to help with visual debugging")
|
RULE_BOOL(Map, MobPathingVisualDebug, false, "Displays nodes in pathing points in realtime to help with visual debugging")
|
||||||
RULE_REAL(Map, FixPathingZMaxDeltaSendTo, 20, "At runtime in SendTo: maximum change in Z to allow the BestZ code to apply")
|
RULE_REAL(Map, FixPathingZMaxDeltaSendTo, 20, "At runtime in SendTo: maximum change in Z to allow the BestZ code to apply")
|
||||||
@@ -432,6 +441,7 @@ RULE_BOOL(Spells, IllusionsAlwaysPersist, false, "Allows Illusions to persist be
|
|||||||
RULE_BOOL(Spells, UseItemCastMessage, false, "Enable to use the \"item begins to glow\" messages when casting from an item.")
|
RULE_BOOL(Spells, UseItemCastMessage, false, "Enable to use the \"item begins to glow\" messages when casting from an item.")
|
||||||
RULE_BOOL(Spells, TargetsTargetRequiresCombatRange, true, "Disable to remove combat range requirement from Target's Target Spell Target Type")
|
RULE_BOOL(Spells, TargetsTargetRequiresCombatRange, true, "Disable to remove combat range requirement from Target's Target Spell Target Type")
|
||||||
RULE_BOOL(Spells, NPCBuffLevelRestrictions, false, "Impose BuffLevelRestrictions on NPCs if true")
|
RULE_BOOL(Spells, NPCBuffLevelRestrictions, false, "Impose BuffLevelRestrictions on NPCs if true")
|
||||||
|
RULE_BOOL(Spells, ResurrectionEffectsBlock, true, "If enabled, resurrection effects cannot be overwritten.")
|
||||||
RULE_CATEGORY_END()
|
RULE_CATEGORY_END()
|
||||||
|
|
||||||
RULE_CATEGORY(Combat)
|
RULE_CATEGORY(Combat)
|
||||||
@@ -780,6 +790,7 @@ RULE_BOOL(Logging, PrintFileFunctionAndLine, false, "Ex: [World Server] [net.cpp
|
|||||||
RULE_BOOL(Logging, WorldGMSayLogging, true, "Relay worldserver logging to zone processes via GM say output")
|
RULE_BOOL(Logging, WorldGMSayLogging, true, "Relay worldserver logging to zone processes via GM say output")
|
||||||
RULE_BOOL(Logging, PlayerEventsQSProcess, false, "Have query server process player events instead of world. Useful when wanting to use a dedicated server and database for processing player events on separate disk")
|
RULE_BOOL(Logging, PlayerEventsQSProcess, false, "Have query server process player events instead of world. Useful when wanting to use a dedicated server and database for processing player events on separate disk")
|
||||||
RULE_INT(Logging, BatchPlayerEventProcessIntervalSeconds, 5, "This is the interval in which player events are processed in world or qs")
|
RULE_INT(Logging, BatchPlayerEventProcessIntervalSeconds, 5, "This is the interval in which player events are processed in world or qs")
|
||||||
|
RULE_INT(Logging, BatchPlayerEventProcessChunkSize, 10000, "This is the cap of events that can be inserted into the queue before a force flush. This is to keep from hitting MySQL max_allowed_packet and killing the connection")
|
||||||
RULE_CATEGORY_END()
|
RULE_CATEGORY_END()
|
||||||
|
|
||||||
RULE_CATEGORY(HotReload)
|
RULE_CATEGORY(HotReload)
|
||||||
|
|||||||
+410
-405
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -139,7 +139,7 @@ public:
|
|||||||
uint32 aug6 = 0,
|
uint32 aug6 = 0,
|
||||||
bool attuned = 0
|
bool attuned = 0
|
||||||
);
|
);
|
||||||
EQ::ItemInstance *CreateBaseItem(const EQ::ItemData *item, int16 charges = 0);
|
EQ::ItemInstance *CreateBaseItem(const EQ::ItemData *item, const std::string &guid, int16 charges);
|
||||||
|
|
||||||
void GetItemsCount(int32 &item_count, uint32 &max_id);
|
void GetItemsCount(int32 &item_count, uint32 &max_id);
|
||||||
void LoadItems(void *data, uint32 size, int32 items, uint32 max_item_id);
|
void LoadItems(void *data, uint32 size, int32 items, uint32 max_item_id);
|
||||||
|
|||||||
+78
-14
@@ -191,24 +191,23 @@ std::string Strings::Escape(const std::string &s)
|
|||||||
|
|
||||||
bool Strings::IsNumber(const std::string &s)
|
bool Strings::IsNumber(const std::string &s)
|
||||||
{
|
{
|
||||||
try {
|
for (char const &c: s) {
|
||||||
auto r = stoi(s);
|
if (c == s[0] && s[0] == '-') {
|
||||||
return true;
|
continue;
|
||||||
}
|
}
|
||||||
catch (std::exception &) {
|
if (std::isdigit(c) == 0) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Strings::IsFloat(const std::string &s)
|
|
||||||
{
|
|
||||||
try {
|
|
||||||
auto r = stof(s);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch (std::exception &) {
|
|
||||||
return false;
|
bool Strings::IsFloat(const std::string &s)
|
||||||
}
|
{
|
||||||
|
char* ptr;
|
||||||
|
strtof(s.c_str(), &ptr);
|
||||||
|
return (*ptr) == '\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string Strings::Join(const std::vector<std::string> &ar, const std::string &delim)
|
std::string Strings::Join(const std::vector<std::string> &ar, const std::string &delim)
|
||||||
@@ -728,7 +727,7 @@ uint32 Strings::TimeToSeconds(std::string time_string)
|
|||||||
time_unit.end()
|
time_unit.end()
|
||||||
);
|
);
|
||||||
|
|
||||||
auto unit = std::stoul(time_unit);
|
auto unit = Strings::ToUnsignedInt(time_unit);
|
||||||
uint32 duration = 0;
|
uint32 duration = 0;
|
||||||
|
|
||||||
if (Strings::Contains(time_string, "s")) {
|
if (Strings::Contains(time_string, "s")) {
|
||||||
@@ -755,7 +754,7 @@ bool Strings::ToBool(std::string bool_string)
|
|||||||
Strings::Contains(bool_string, "on") ||
|
Strings::Contains(bool_string, "on") ||
|
||||||
Strings::Contains(bool_string, "enable") ||
|
Strings::Contains(bool_string, "enable") ||
|
||||||
Strings::Contains(bool_string, "enabled") ||
|
Strings::Contains(bool_string, "enabled") ||
|
||||||
(Strings::IsNumber(bool_string) && std::stoi(bool_string))
|
(Strings::IsNumber(bool_string) && Strings::ToInt(bool_string))
|
||||||
) {
|
) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -782,7 +781,72 @@ std::string Strings::Random(size_t length)
|
|||||||
// fails to cast to a number
|
// fails to cast to a number
|
||||||
int Strings::ToInt(const std::string &s, int fallback)
|
int Strings::ToInt(const std::string &s, int fallback)
|
||||||
{
|
{
|
||||||
return Strings::IsNumber(s) ? std::stoi(s) : fallback;
|
if (!Strings::IsNumber(s)) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
return std::stoi(s);
|
||||||
|
}
|
||||||
|
catch (std::exception &) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int64 Strings::ToBigInt(const std::string &s, int64 fallback)
|
||||||
|
{
|
||||||
|
if (!Strings::IsNumber(s)) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
return std::stoll(s);
|
||||||
|
}
|
||||||
|
catch (std::exception &) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32 Strings::ToUnsignedInt(const std::string &s, uint32 fallback)
|
||||||
|
{
|
||||||
|
if (!Strings::IsNumber(s)) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
return std::stoul(s);
|
||||||
|
}
|
||||||
|
catch (std::exception &) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
uint64 Strings::ToUnsignedBigInt(const std::string &s, uint64 fallback)
|
||||||
|
{
|
||||||
|
if (!Strings::IsNumber(s)) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
return std::stoull(s);
|
||||||
|
}
|
||||||
|
catch (std::exception &) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
float Strings::ToFloat(const std::string &s, float fallback)
|
||||||
|
{
|
||||||
|
if (!Strings::IsFloat(s)) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
return std::stof(s);
|
||||||
|
}
|
||||||
|
catch (std::exception &) {
|
||||||
|
return fallback;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string Strings::RemoveNumbers(std::string s)
|
std::string Strings::RemoveNumbers(std::string s)
|
||||||
|
|||||||
@@ -87,6 +87,10 @@ public:
|
|||||||
static bool Contains(std::vector<std::string> container, std::string element);
|
static bool Contains(std::vector<std::string> container, std::string element);
|
||||||
static bool Contains(const std::string& subject, const std::string& search);
|
static bool Contains(const std::string& subject, const std::string& search);
|
||||||
static int ToInt(const std::string &s, int fallback = 0);
|
static int ToInt(const std::string &s, int fallback = 0);
|
||||||
|
static int64 ToBigInt(const std::string &s, int64 fallback = 0);
|
||||||
|
static uint32 ToUnsignedInt(const std::string &s, uint32 fallback = 0);
|
||||||
|
static uint64 ToUnsignedBigInt(const std::string &s, uint64 fallback = 0);
|
||||||
|
static float ToFloat(const std::string &s, float fallback = 0.0f);
|
||||||
static bool IsNumber(const std::string &s);
|
static bool IsNumber(const std::string &s);
|
||||||
static std::string RemoveNumbers(std::string s);
|
static std::string RemoveNumbers(std::string s);
|
||||||
static bool IsFloat(const std::string &s);
|
static bool IsFloat(const std::string &s);
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ bool atobool(const char *iBool)
|
|||||||
if (!strcasecmp(iBool, "n")) {
|
if (!strcasecmp(iBool, "n")) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (atoi(iBool)) {
|
if (Strings::ToInt(iBool)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -42,6 +42,8 @@
|
|||||||
#include <cstring>
|
#include <cstring>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
|
inline bool g_is_forced_tty = std::getenv("IS_TTY");
|
||||||
|
|
||||||
namespace rang {
|
namespace rang {
|
||||||
|
|
||||||
/* For better compability with most of terminals do not use any style settings
|
/* For better compability with most of terminals do not use any style settings
|
||||||
@@ -220,6 +222,10 @@ inline bool isMsysPty(int fd) noexcept
|
|||||||
|
|
||||||
inline bool isTerminal(const std::streambuf *osbuf) noexcept
|
inline bool isTerminal(const std::streambuf *osbuf) noexcept
|
||||||
{
|
{
|
||||||
|
if (g_is_forced_tty) {
|
||||||
|
return g_is_forced_tty;
|
||||||
|
}
|
||||||
|
|
||||||
using std::cerr;
|
using std::cerr;
|
||||||
using std::clog;
|
using std::clog;
|
||||||
using std::cout;
|
using std::cout;
|
||||||
|
|||||||
+3
-3
@@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
// Build variables
|
// Build variables
|
||||||
// these get injected during the build pipeline
|
// these get injected during the build pipeline
|
||||||
#define CURRENT_VERSION "22.3.0-dev" // always append -dev to the current version for custom-builds
|
#define CURRENT_VERSION "22.4.5-dev" // always append -dev to the current version for custom-builds
|
||||||
#define LOGIN_VERSION "0.8.0"
|
#define LOGIN_VERSION "0.8.0"
|
||||||
#define COMPILE_DATE __DATE__
|
#define COMPILE_DATE __DATE__
|
||||||
#define COMPILE_TIME __TIME__
|
#define COMPILE_TIME __TIME__
|
||||||
@@ -42,8 +42,8 @@
|
|||||||
* Manifest: https://github.com/EQEmu/Server/blob/master/utils/sql/db_update_manifest.txt
|
* Manifest: https://github.com/EQEmu/Server/blob/master/utils/sql/db_update_manifest.txt
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define CURRENT_BINARY_DATABASE_VERSION 9220
|
#define CURRENT_BINARY_DATABASE_VERSION 9222
|
||||||
#define CURRENT_BINARY_BOTS_DATABASE_VERSION 9037
|
#define CURRENT_BINARY_BOTS_DATABASE_VERSION 9038
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
@@ -381,7 +381,7 @@ uint32 AccountManagement::CheckExternalLoginserverUserCredentials(
|
|||||||
auto s = Strings::Split(server.options.GetEQEmuLoginServerAddress(), ':');
|
auto s = Strings::Split(server.options.GetEQEmuLoginServerAddress(), ':');
|
||||||
if (s.size() == 2) {
|
if (s.size() == 2) {
|
||||||
auto address = s[0];
|
auto address = s[0];
|
||||||
auto port = std::stoi(s[1]);
|
auto port = Strings::ToInt(s[1]);
|
||||||
|
|
||||||
EQ::Net::DNSLookup(
|
EQ::Net::DNSLookup(
|
||||||
address, port, false, [&](const std::string &addr) {
|
address, port, false, [&](const std::string &addr) {
|
||||||
|
|||||||
+11
-11
@@ -32,7 +32,7 @@ Database::Database(
|
|||||||
user.c_str(),
|
user.c_str(),
|
||||||
pass.c_str(),
|
pass.c_str(),
|
||||||
name.c_str(),
|
name.c_str(),
|
||||||
std::stoi(port),
|
Strings::ToInt(port),
|
||||||
&errnum,
|
&errnum,
|
||||||
errbuf
|
errbuf
|
||||||
)
|
)
|
||||||
@@ -93,7 +93,7 @@ bool Database::GetLoginDataFromAccountInfo(
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
id = atoi(row[0]);
|
id = Strings::ToInt(row[0]);
|
||||||
password = row[1];
|
password = row[1];
|
||||||
|
|
||||||
LogDebug(
|
LogDebug(
|
||||||
@@ -145,7 +145,7 @@ bool Database::GetLoginTokenDataFromToken(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (strcmp(row[2], "login_server_id") == 0) {
|
if (strcmp(row[2], "login_server_id") == 0) {
|
||||||
db_account_id = atoi(row[3]);
|
db_account_id = Strings::ToInt(row[3]);
|
||||||
found_login_id = true;
|
found_login_id = true;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -178,7 +178,7 @@ unsigned int Database::GetFreeID(const std::string &loginserver)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
return std::stoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -368,12 +368,12 @@ Database::DbWorldRegistration Database::GetWorldRegistration(
|
|||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
r.loaded = true;
|
r.loaded = true;
|
||||||
r.server_id = std::stoi(row[0]);
|
r.server_id = Strings::ToInt(row[0]);
|
||||||
r.server_description = row[1];
|
r.server_description = row[1];
|
||||||
r.server_list_type = std::stoi(row[3]);
|
r.server_list_type = Strings::ToInt(row[3]);
|
||||||
r.is_server_trusted = std::stoi(row[2]) > 0;
|
r.is_server_trusted = Strings::ToInt(row[2]) > 0;
|
||||||
r.server_list_description = row[4];
|
r.server_list_description = row[4];
|
||||||
r.server_admin_id = std::stoi(row[5]);
|
r.server_admin_id = Strings::ToInt(row[5]);
|
||||||
|
|
||||||
if (r.server_admin_id <= 0) {
|
if (r.server_admin_id <= 0) {
|
||||||
return r;
|
return r;
|
||||||
@@ -513,7 +513,7 @@ bool Database::CreateWorldRegistration(
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
id = std::stoi(row[0]);
|
id = Strings::ToInt(row[0]);
|
||||||
auto insert_query = fmt::format(
|
auto insert_query = fmt::format(
|
||||||
"INSERT INTO login_world_servers SET id = {0}, long_name = '{1}', short_name = '{2}', last_ip_address = '{3}', \n"
|
"INSERT INTO login_world_servers SET id = {0}, long_name = '{1}', short_name = '{2}', last_ip_address = '{3}', \n"
|
||||||
"login_server_list_type_id = 3, login_server_admin_id = {4}, is_server_trusted = 0, tag_description = ''",
|
"login_server_list_type_id = 3, login_server_admin_id = {4}, is_server_trusted = 0, tag_description = ''",
|
||||||
@@ -647,7 +647,7 @@ Database::DbLoginServerAdmin Database::GetLoginServerAdmin(const std::string &ac
|
|||||||
if (results.RowCount() == 1) {
|
if (results.RowCount() == 1) {
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
r.loaded = true;
|
r.loaded = true;
|
||||||
r.id = std::stoi(row[0]);
|
r.id = Strings::ToInt(row[0]);
|
||||||
r.account_name = row[1];
|
r.account_name = row[1];
|
||||||
r.account_password = row[2];
|
r.account_password = row[2];
|
||||||
r.first_name = row[3];
|
r.first_name = row[3];
|
||||||
@@ -683,7 +683,7 @@ Database::DbLoginServerAccount Database::GetLoginServerAccountByAccountName(
|
|||||||
if (results.RowCount() == 1) {
|
if (results.RowCount() == 1) {
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
r.loaded = true;
|
r.loaded = true;
|
||||||
r.id = std::stoi(row[0]);
|
r.id = Strings::ToInt(row[0]);
|
||||||
r.account_name = row[1];
|
r.account_name = row[1];
|
||||||
r.account_password = row[2];
|
r.account_password = row[2];
|
||||||
r.account_email = row[3];
|
r.account_email = row[3];
|
||||||
|
|||||||
@@ -480,8 +480,8 @@ namespace LoginserverWebserver {
|
|||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
LoginserverWebserver::TokenManager::token_data token_data;
|
LoginserverWebserver::TokenManager::token_data token_data;
|
||||||
token_data.token = row[0];
|
token_data.token = row[0];
|
||||||
token_data.can_write = std::stoi(row[1]) > 0;
|
token_data.can_write = Strings::ToInt(row[1]) > 0;
|
||||||
token_data.can_read = std::stoi(row[2]) > 0;
|
token_data.can_read = Strings::ToInt(row[2]) > 0;
|
||||||
|
|
||||||
LogDebug(
|
LogDebug(
|
||||||
"Inserting api token to internal list [{0}] write {1} read {2}",
|
"Inserting api token to internal list [{0}] write {1} read {2}",
|
||||||
|
|||||||
@@ -288,9 +288,16 @@ int main(int argc, char **argv)
|
|||||||
LogInfo("[Config] [Security] IsPasswordLoginAllowed [{0}]", server.options.IsPasswordLoginAllowed());
|
LogInfo("[Config] [Security] IsPasswordLoginAllowed [{0}]", server.options.IsPasswordLoginAllowed());
|
||||||
LogInfo("[Config] [Security] IsUpdatingInsecurePasswords [{0}]", server.options.IsUpdatingInsecurePasswords());
|
LogInfo("[Config] [Security] IsUpdatingInsecurePasswords [{0}]", server.options.IsUpdatingInsecurePasswords());
|
||||||
|
|
||||||
|
Timer keepalive(INTERSERVER_TIMER); // does auto-reconnect
|
||||||
|
|
||||||
auto loop_fn = [&](EQ::Timer* t) {
|
auto loop_fn = [&](EQ::Timer* t) {
|
||||||
Timer::SetCurrentTime();
|
Timer::SetCurrentTime();
|
||||||
|
|
||||||
|
if (keepalive.Check()) {
|
||||||
|
keepalive.Start();
|
||||||
|
server.db->ping();
|
||||||
|
}
|
||||||
|
|
||||||
if (!run_server) {
|
if (!run_server) {
|
||||||
EQ::EventLoop::Get().Shutdown();
|
EQ::EventLoop::Get().Shutdown();
|
||||||
return;
|
return;
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "eqemu-server",
|
"name": "eqemu-server",
|
||||||
"version": "22.3.0",
|
"version": "22.4.5",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/EQEmu/Server.git"
|
"url": "https://github.com/EQEmu/Server.git"
|
||||||
|
|||||||
@@ -33,8 +33,6 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
//atoi is not uint32 or uint32 safe!!!!
|
|
||||||
#define atoul(str) strtoul(str, nullptr, 10)
|
|
||||||
|
|
||||||
class QSDatabase : public Database {
|
class QSDatabase : public Database {
|
||||||
public:
|
public:
|
||||||
|
|||||||
@@ -44,15 +44,15 @@ bool LFGuildManager::LoadDatabase()
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
uint32 type = atoul(row[0]);
|
uint32 type = Strings::ToUnsignedInt(row[0]);
|
||||||
if(type == 0)
|
if(type == 0)
|
||||||
{
|
{
|
||||||
PlayerLookingForGuild p(row[1], row[2], atoul(row[3]), atoul(row[5]), atoul(row[6]), atoul(row[7]), atoul(row[8]));
|
PlayerLookingForGuild p(row[1], row[2], Strings::ToUnsignedInt(row[3]), Strings::ToUnsignedInt(row[5]), Strings::ToUnsignedInt(row[6]), Strings::ToUnsignedInt(row[7]), Strings::ToUnsignedInt(row[8]));
|
||||||
Players.push_back(p);
|
Players.push_back(p);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
GuildLookingForPlayers g(row[1], row[2], atoul(row[3]), atoul(row[4]), atoul(row[5]), atoul(row[6]), atoul(row[7]), atoul(row[8]));
|
GuildLookingForPlayers g(row[1], row[2], Strings::ToUnsignedInt(row[3]), Strings::ToUnsignedInt(row[4]), Strings::ToUnsignedInt(row[5]), Strings::ToUnsignedInt(row[6]), Strings::ToUnsignedInt(row[7]), Strings::ToUnsignedInt(row[8]));
|
||||||
Guilds.push_back(g);
|
Guilds.push_back(g);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
#include "worldserver.h"
|
#include "worldserver.h"
|
||||||
#include "../common/path_manager.h"
|
#include "../common/path_manager.h"
|
||||||
#include "../common/zone_store.h"
|
#include "../common/zone_store.h"
|
||||||
|
#include "../common/events/player_event_logs.h"
|
||||||
#include <list>
|
#include <list>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#include <thread>
|
#include <thread>
|
||||||
@@ -47,6 +48,7 @@ WorldServer *worldserver = 0;
|
|||||||
EQEmuLogSys LogSys;
|
EQEmuLogSys LogSys;
|
||||||
PathManager path;
|
PathManager path;
|
||||||
ZoneStore zone_store;
|
ZoneStore zone_store;
|
||||||
|
PlayerEventLogs player_event_logs;
|
||||||
|
|
||||||
void CatchSignal(int sig_num)
|
void CatchSignal(int sig_num)
|
||||||
{
|
{
|
||||||
@@ -106,6 +108,9 @@ int main()
|
|||||||
/* Load Looking For Guild Manager */
|
/* Load Looking For Guild Manager */
|
||||||
lfguildmanager.LoadDatabase();
|
lfguildmanager.LoadDatabase();
|
||||||
|
|
||||||
|
Timer player_event_process_timer(1000);
|
||||||
|
player_event_logs.SetDatabase(&database)->Init();
|
||||||
|
|
||||||
auto loop_fn = [&](EQ::Timer* t) {
|
auto loop_fn = [&](EQ::Timer* t) {
|
||||||
Timer::SetCurrentTime();
|
Timer::SetCurrentTime();
|
||||||
|
|
||||||
@@ -117,6 +122,10 @@ int main()
|
|||||||
if (LFGuildExpireTimer.Check()) {
|
if (LFGuildExpireTimer.Check()) {
|
||||||
lfguildmanager.ExpireEntries();
|
lfguildmanager.ExpireEntries();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (player_event_process_timer.Check()) {
|
||||||
|
player_event_logs.Process();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
EQ::Timer process_timer(loop_fn);
|
EQ::Timer process_timer(loop_fn);
|
||||||
|
|||||||
@@ -29,6 +29,8 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|||||||
#include "lfguild.h"
|
#include "lfguild.h"
|
||||||
#include "queryservconfig.h"
|
#include "queryservconfig.h"
|
||||||
#include "worldserver.h"
|
#include "worldserver.h"
|
||||||
|
#include "../common/events/player_events.h"
|
||||||
|
#include "../common/events/player_event_logs.h"
|
||||||
#include <iomanip>
|
#include <iomanip>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
@@ -89,6 +91,17 @@ void WorldServer::HandleMessage(uint16 opcode, const EQ::Net::Packet &p)
|
|||||||
case 0: {
|
case 0: {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case ServerOP_PlayerEvent: {
|
||||||
|
auto n = PlayerEvent::PlayerEventContainer{};
|
||||||
|
auto s = (ServerSendPlayerEvent_Struct *) p.Data();
|
||||||
|
EQ::Util::MemoryStreamReader ss(s->cereal_data, s->cereal_size);
|
||||||
|
cereal::BinaryInputArchive archive(ss);
|
||||||
|
archive(n);
|
||||||
|
|
||||||
|
player_event_logs.AddToQueue(n.player_event_log);
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
case ServerOP_KeepAlive: {
|
case ServerOP_KeepAlive: {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -124,7 +124,7 @@ int main(int argc, char **argv)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
content_db.SetMysql(database.getMySQL());
|
content_db.SetMySQL(database);
|
||||||
}
|
}
|
||||||
|
|
||||||
LogSys.SetDatabase(&database)
|
LogSys.SetDatabase(&database)
|
||||||
|
|||||||
+4
-3
@@ -46,8 +46,7 @@ int main()
|
|||||||
auto ConfigLoadResult = EQEmuConfig::LoadConfig();
|
auto ConfigLoadResult = EQEmuConfig::LoadConfig();
|
||||||
Config = EQEmuConfig::get();
|
Config = EQEmuConfig::get();
|
||||||
try {
|
try {
|
||||||
std::ofstream outfile("test_output.txt");
|
std::unique_ptr<Test::Output> output(new Test::TextOutput(Test::TextOutput::Verbose));
|
||||||
std::unique_ptr<Test::Output> output(new Test::TextOutput(Test::TextOutput::Verbose, outfile));
|
|
||||||
Test::Suite tests;
|
Test::Suite tests;
|
||||||
tests.add(new MemoryMappedFileTest());
|
tests.add(new MemoryMappedFileTest());
|
||||||
tests.add(new IPCMutexTest());
|
tests.add(new IPCMutexTest());
|
||||||
@@ -60,7 +59,9 @@ int main()
|
|||||||
tests.add(new SkillsUtilsTest());
|
tests.add(new SkillsUtilsTest());
|
||||||
tests.add(new TaskStateTest());
|
tests.add(new TaskStateTest());
|
||||||
tests.run(*output, true);
|
tests.run(*output, true);
|
||||||
} catch (...) {
|
}
|
||||||
|
catch (std::exception &ex) {
|
||||||
|
LogError("Test Failure [{}]", ex.what());
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@@ -31,6 +31,8 @@ public:
|
|||||||
TEST_ADD(StringUtilTest::SearchDeliminatedStringTest);
|
TEST_ADD(StringUtilTest::SearchDeliminatedStringTest);
|
||||||
TEST_ADD(StringUtilTest::SplitStringTest);
|
TEST_ADD(StringUtilTest::SplitStringTest);
|
||||||
TEST_ADD(StringUtilTest::FromCharsTest);
|
TEST_ADD(StringUtilTest::FromCharsTest);
|
||||||
|
TEST_ADD(StringUtilTest::TestIsFloat);
|
||||||
|
TEST_ADD(StringUtilTest::TestIsNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
~StringUtilTest() {
|
~StringUtilTest() {
|
||||||
@@ -116,6 +118,26 @@ public:
|
|||||||
TEST_ASSERT(float_value == 3.14f);
|
TEST_ASSERT(float_value == 3.14f);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TestIsFloat() {
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsFloat("0.23424523"), true);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsFloat("12312312313.23424523"), true);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsFloat("12312312313"), true);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsFloat(".234234"), true);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsFloat(".234234f"), false);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsFloat("Johnson"), false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void TestIsNumber() {
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("0.23424523"), false);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("12312312313.23424523"), false);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("12312312313"), true);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("12312312313f"), false); // character at end
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("18446744073709551616"), true); // 64
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("-18"), true);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("-f18"), false);
|
||||||
|
TEST_ASSERT_EQUALS(Strings::IsNumber("-18446744073709551616"), true); // 64
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
+6
-6
@@ -48,10 +48,10 @@ ChatChannel::ChatChannel(std::string inName, std::string inOwner, std::string in
|
|||||||
m_moderated = false;
|
m_moderated = false;
|
||||||
|
|
||||||
LogDebug(
|
LogDebug(
|
||||||
"New ChatChannel created: Name: [{}], Owner: [{}], Password: [{}], MinStatus: [{}]",
|
"New ChatChannel created: Name: [{}] Owner: [{}] Password: [{}] MinStatus: [{}]",
|
||||||
m_name.c_str(),
|
m_name,
|
||||||
m_owner.c_str(),
|
m_owner,
|
||||||
m_password.c_str(),
|
m_password,
|
||||||
m_minimum_status
|
m_minimum_status
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -657,7 +657,7 @@ ChatChannel *ChatChannelList::RemoveClientFromChannel(const std::string& in_chan
|
|||||||
std::string channel_name = in_channel_name;
|
std::string channel_name = in_channel_name;
|
||||||
|
|
||||||
if (in_channel_name.length() > 0 && isdigit(channel_name[0])) {
|
if (in_channel_name.length() > 0 && isdigit(channel_name[0])) {
|
||||||
channel_name = c->ChannelSlotName(atoi(in_channel_name.c_str()));
|
channel_name = c->ChannelSlotName(Strings::ToInt(in_channel_name.c_str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
auto *required_channel = FindChannel(channel_name);
|
auto *required_channel = FindChannel(channel_name);
|
||||||
@@ -667,7 +667,7 @@ ChatChannel *ChatChannelList::RemoveClientFromChannel(const std::string& in_chan
|
|||||||
}
|
}
|
||||||
|
|
||||||
LogDebug("Client [{}] removed from channel [{}]. Channel is owned by {}. Command directed: {}", c->GetName(), channel_name, required_channel->GetOwnerName(), command_directed);
|
LogDebug("Client [{}] removed from channel [{}]. Channel is owned by {}. Command directed: {}", c->GetName(), channel_name, required_channel->GetOwnerName(), command_directed);
|
||||||
if (c->GetName() == required_channel->GetOwnerName() && command_directed) { // Check if the client that is leaving is the the channel owner
|
if (c->GetName() == required_channel->GetOwnerName() && command_directed) { // Check if the client that is leaving is the channel owner
|
||||||
LogDebug("Owner left the channel [{}], removing channel from database...", channel_name);
|
LogDebug("Owner left the channel [{}], removing channel from database...", channel_name);
|
||||||
database.DeleteChatChannel(channel_name); // Remove the channel from the database.
|
database.DeleteChatChannel(channel_name); // Remove the channel from the database.
|
||||||
LogDebug("Flagging [{}] channel as temporary...", channel_name);
|
LogDebug("Flagging [{}] channel as temporary...", channel_name);
|
||||||
|
|||||||
+18
-15
@@ -379,14 +379,14 @@ static void ProcessSetMessageStatus(std::string SetMessageCommand) {
|
|||||||
|
|
||||||
if (NumEnd == std::string::npos) {
|
if (NumEnd == std::string::npos) {
|
||||||
|
|
||||||
MessageNumber = atoi(SetMessageCommand.substr(NumStart).c_str());
|
MessageNumber = Strings::ToInt(SetMessageCommand.substr(NumStart).c_str());
|
||||||
|
|
||||||
database.SetMessageStatus(MessageNumber, Status);
|
database.SetMessageStatus(MessageNumber, Status);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
MessageNumber = atoi(SetMessageCommand.substr(NumStart, NumEnd - NumStart).c_str());
|
MessageNumber = Strings::ToInt(SetMessageCommand.substr(NumStart, NumEnd - NumStart).c_str());
|
||||||
|
|
||||||
database.SetMessageStatus(MessageNumber, Status);
|
database.SetMessageStatus(MessageNumber, Status);
|
||||||
|
|
||||||
@@ -793,7 +793,10 @@ void Clientlist::ProcessOPMailCommand(Client *c, std::string command_string, boo
|
|||||||
case CommandJoin:
|
case CommandJoin:
|
||||||
if (!command_directed) {
|
if (!command_directed) {
|
||||||
//Append saved channels to params
|
//Append saved channels to params
|
||||||
parameters = parameters + ", " + database.CurrentPlayerChannels(c->GetName());
|
const auto saved_channels = database.CurrentPlayerChannels(c->GetName());
|
||||||
|
if (!saved_channels.empty()) {
|
||||||
|
parameters += fmt::format(", {}", Strings::Join(saved_channels, ", "));
|
||||||
|
}
|
||||||
parameters = RemoveDuplicateChannels(parameters);
|
parameters = RemoveDuplicateChannels(parameters);
|
||||||
}
|
}
|
||||||
c->JoinChannels(parameters, command_directed);
|
c->JoinChannels(parameters, command_directed);
|
||||||
@@ -873,7 +876,7 @@ void Clientlist::ProcessOPMailCommand(Client *c, std::string command_string, boo
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case CommandGetBody:
|
case CommandGetBody:
|
||||||
database.SendBody(c, atoi(parameters.c_str()));
|
database.SendBody(c, Strings::ToInt(parameters.c_str()));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CommandMailTo:
|
case CommandMailTo:
|
||||||
@@ -888,7 +891,7 @@ void Clientlist::ProcessOPMailCommand(Client *c, std::string command_string, boo
|
|||||||
case CommandSelectMailBox:
|
case CommandSelectMailBox:
|
||||||
{
|
{
|
||||||
std::string::size_type NumStart = parameters.find_first_of("0123456789");
|
std::string::size_type NumStart = parameters.find_first_of("0123456789");
|
||||||
c->ChangeMailBox(atoi(parameters.substr(NumStart).c_str()));
|
c->ChangeMailBox(Strings::ToInt(parameters.substr(NumStart).c_str()));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case CommandSetMailForwarding:
|
case CommandSetMailForwarding:
|
||||||
@@ -1250,7 +1253,7 @@ void Client::ProcessChannelList(std::string Input) {
|
|||||||
std::string ChannelName = Input;
|
std::string ChannelName = Input;
|
||||||
|
|
||||||
if (isdigit(ChannelName[0]))
|
if (isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
ChatChannel *RequiredChannel = ChannelList->FindChannel(ChannelName);
|
ChatChannel *RequiredChannel = ChannelList->FindChannel(ChannelName);
|
||||||
|
|
||||||
@@ -1411,7 +1414,7 @@ void Client::SendChannelMessageByNumber(std::string Message) {
|
|||||||
if (MessageStart == std::string::npos)
|
if (MessageStart == std::string::npos)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int ChannelNumber = atoi(Message.substr(0, MessageStart).c_str());
|
int ChannelNumber = Strings::ToInt(Message.substr(0, MessageStart).c_str());
|
||||||
|
|
||||||
if ((ChannelNumber < 1) || (ChannelNumber > MAX_JOINED_CHANNELS)) {
|
if ((ChannelNumber < 1) || (ChannelNumber > MAX_JOINED_CHANNELS)) {
|
||||||
|
|
||||||
@@ -1654,7 +1657,7 @@ void Client::SetChannelPassword(std::string ChannelPassword) {
|
|||||||
std::string ChannelName = ChannelPassword.substr(ChannelStart);
|
std::string ChannelName = ChannelPassword.substr(ChannelStart);
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
std::string Message;
|
std::string Message;
|
||||||
|
|
||||||
@@ -1719,7 +1722,7 @@ void Client::SetChannelOwner(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
LogInfo("Set owner of channel [[{}]] to [[{}]]", ChannelName.c_str(), NewOwner.c_str());
|
LogInfo("Set owner of channel [[{}]] to [[{}]]", ChannelName.c_str(), NewOwner.c_str());
|
||||||
|
|
||||||
@@ -1765,7 +1768,7 @@ void Client::OPList(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
ChatChannel *RequiredChannel = ChannelList->FindChannel(ChannelName);
|
ChatChannel *RequiredChannel = ChannelList->FindChannel(ChannelName);
|
||||||
|
|
||||||
@@ -1808,7 +1811,7 @@ void Client::ChannelInvite(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
LogInfo("[[{}]] invites [[{}]] to channel [[{}]]", GetName().c_str(), Invitee.c_str(), ChannelName.c_str());
|
LogInfo("[[{}]] invites [[{}]] to channel [[{}]]", GetName().c_str(), Invitee.c_str(), ChannelName.c_str());
|
||||||
|
|
||||||
@@ -1878,7 +1881,7 @@ void Client::ChannelModerate(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
ChatChannel *RequiredChannel = ChannelList->FindChannel(ChannelName);
|
ChatChannel *RequiredChannel = ChannelList->FindChannel(ChannelName);
|
||||||
|
|
||||||
@@ -1936,7 +1939,7 @@ void Client::ChannelGrantModerator(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
LogInfo("[[{}]] gives [[{}]] moderator rights to channel [[{}]]", GetName().c_str(), Moderator.c_str(), ChannelName.c_str());
|
LogInfo("[[{}]] gives [[{}]] moderator rights to channel [[{}]]", GetName().c_str(), Moderator.c_str(), ChannelName.c_str());
|
||||||
|
|
||||||
@@ -2017,7 +2020,7 @@ void Client::ChannelGrantVoice(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
LogInfo("[[{}]] gives [[{}]] voice to channel [[{}]]", GetName().c_str(), Voicee.c_str(), ChannelName.c_str());
|
LogInfo("[[{}]] gives [[{}]] voice to channel [[{}]]", GetName().c_str(), Voicee.c_str(), ChannelName.c_str());
|
||||||
|
|
||||||
@@ -2105,7 +2108,7 @@ void Client::ChannelKick(std::string CommandString) {
|
|||||||
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
std::string ChannelName = CapitaliseName(CommandString.substr(ChannelStart));
|
||||||
|
|
||||||
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
if ((ChannelName.length() > 0) && isdigit(ChannelName[0]))
|
||||||
ChannelName = ChannelSlotName(atoi(ChannelName.c_str()));
|
ChannelName = ChannelSlotName(Strings::ToInt(ChannelName.c_str()));
|
||||||
|
|
||||||
LogInfo("[[{}]] kicks [[{}]] from channel [[{}]]", GetName().c_str(), Kickee.c_str(), ChannelName.c_str());
|
LogInfo("[[{}]] kicks [[{}]] from channel [[{}]]", GetName().c_str(), Kickee.c_str(), ChannelName.c_str());
|
||||||
|
|
||||||
|
|||||||
+20
-19
@@ -84,10 +84,10 @@ void UCSDatabase::GetAccountStatus(Client *client)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
client->SetAccountStatus(atoi(row[0]));
|
client->SetAccountStatus(Strings::ToInt(row[0]));
|
||||||
client->SetHideMe(atoi(row[1]) != 0);
|
client->SetHideMe(Strings::ToInt(row[1]) != 0);
|
||||||
client->SetKarma(atoi(row[2]));
|
client->SetKarma(Strings::ToInt(row[2]));
|
||||||
client->SetRevoked((atoi(row[3]) == 1 ? true : false));
|
client->SetRevoked((Strings::ToInt(row[3]) == 1 ? true : false));
|
||||||
|
|
||||||
LogDebug(
|
LogDebug(
|
||||||
"Set account status to [{}], hideme to [{}] and karma to [{}] for [{}]",
|
"Set account status to [{}], hideme to [{}] and karma to [{}] for [{}]",
|
||||||
@@ -119,9 +119,9 @@ int UCSDatabase::FindAccount(const char *characterName, Client *client)
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
client->AddCharacter(atoi(row[0]), characterName, atoi(row[2]));
|
client->AddCharacter(Strings::ToInt(row[0]), characterName, Strings::ToInt(row[2]));
|
||||||
|
|
||||||
int accountID = atoi(row[1]);
|
int accountID = Strings::ToInt(row[1]);
|
||||||
|
|
||||||
LogInfo("Account ID for [{}] is [{}]", characterName, accountID);
|
LogInfo("Account ID for [{}] is [{}]", characterName, accountID);
|
||||||
|
|
||||||
@@ -137,7 +137,7 @@ int UCSDatabase::FindAccount(const char *characterName, Client *client)
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row)
|
for (auto row = results.begin(); row != results.end(); ++row)
|
||||||
client->AddCharacter(atoi(row[0]), row[1], atoi(row[2]));
|
client->AddCharacter(Strings::ToInt(row[0]), row[1], Strings::ToInt(row[2]));
|
||||||
|
|
||||||
return accountID;
|
return accountID;
|
||||||
}
|
}
|
||||||
@@ -197,7 +197,7 @@ int UCSDatabase::FindCharacter(const char *characterName)
|
|||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
|
|
||||||
int characterID = atoi(row[0]);
|
int characterID = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
return characterID;
|
return characterID;
|
||||||
}
|
}
|
||||||
@@ -244,7 +244,7 @@ bool UCSDatabase::LoadChatChannels()
|
|||||||
auto channel_min_status = row[3];
|
auto channel_min_status = row[3];
|
||||||
|
|
||||||
if (!ChannelList->FindChannel(channel_name)) {
|
if (!ChannelList->FindChannel(channel_name)) {
|
||||||
ChannelList->CreateChannel(channel_name, channel_owner, channel_password, true, atoi(channel_min_status), false);
|
ChannelList->CreateChannel(channel_name, channel_owner, channel_password, true, Strings::ToInt(channel_min_status), false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
@@ -336,16 +336,17 @@ void UCSDatabase::DeleteChatChannel(const std::string& channel_name)
|
|||||||
LogInfo("Deleting channel [{}] from the database.", channel_name);
|
LogInfo("Deleting channel [{}] from the database.", channel_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string UCSDatabase::CurrentPlayerChannels(const std::string& player_name) {
|
std::vector<std::string> UCSDatabase::CurrentPlayerChannels(const std::string& player_name) {
|
||||||
int current_player_channel_count = CurrentPlayerChannelCount(player_name);
|
auto rows = ChatchannelsRepository::GetWhere(*this, fmt::format("`owner` = '{}'", Strings::Escape(player_name)));
|
||||||
if (current_player_channel_count == 0) {
|
if (rows.empty()) {
|
||||||
return "";
|
return {};
|
||||||
}
|
}
|
||||||
const auto rquery = fmt::format("SELECT GROUP_CONCAT(`name` SEPARATOR ', ') FROM chatchannels WHERE `owner` = '{}'; ", Strings::Escape(player_name));
|
std::vector<std::string> channels = {};
|
||||||
auto results = QueryDatabase(rquery);
|
channels.reserve(rows.size());
|
||||||
auto row = results.begin();
|
for (auto &e: rows) {
|
||||||
std::string channels = row[0];
|
channels.emplace_back(e.name);
|
||||||
LogDebug("Player [{}] has the following permanent channels saved to the database: [{}].", player_name, channels);
|
}
|
||||||
|
LogDebug("Player [{}] has the following [{}] permanent channels saved to the database: [{}].", player_name, rows.size(), Strings::Join(channels, ", "));
|
||||||
return channels;
|
return channels;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -742,7 +743,7 @@ void UCSDatabase::GetFriendsAndIgnore(const int& charID, std::vector<std::string
|
|||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
std::string name = row[1];
|
std::string name = row[1];
|
||||||
|
|
||||||
if (atoi(row[0]) == 0) {
|
if (Strings::ToInt(row[0]) == 0) {
|
||||||
ignorees.push_back(name);
|
ignorees.push_back(name);
|
||||||
LogInfo("Added Ignoree from DB [{}]", name.c_str());
|
LogInfo("Added Ignoree from DB [{}]", name.c_str());
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
+1
-3
@@ -35,8 +35,6 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
//atoi is not uint32 or uint32 safe!!!!
|
|
||||||
#define atoul(str) strtoul(str, nullptr, 10)
|
|
||||||
|
|
||||||
class UCSDatabase : public Database {
|
class UCSDatabase : public Database {
|
||||||
public:
|
public:
|
||||||
@@ -52,7 +50,7 @@ public:
|
|||||||
void SaveChatChannel(const std::string& channel_name, const std::string& channel_owner, const std::string& channel_password, const uint16& min_status);
|
void SaveChatChannel(const std::string& channel_name, const std::string& channel_owner, const std::string& channel_password, const uint16& min_status);
|
||||||
void DeleteChatChannel(const std::string& channel_name);
|
void DeleteChatChannel(const std::string& channel_name);
|
||||||
int CurrentPlayerChannelCount(const std::string& player_name);
|
int CurrentPlayerChannelCount(const std::string& player_name);
|
||||||
std::string CurrentPlayerChannels(const std::string& player_name);
|
std::vector<std::string> CurrentPlayerChannels(const std::string& player_name);
|
||||||
void GetAccountStatus(Client *c);
|
void GetAccountStatus(Client *c);
|
||||||
void SetChannelPassword(const std::string& channel_name, const std::string& password);
|
void SetChannelPassword(const std::string& channel_name, const std::string& password);
|
||||||
void SetChannelOwner(const std::string& channel_name, const std::string& owner);
|
void SetChannelOwner(const std::string& channel_name, const std::string& owner);
|
||||||
|
|||||||
+5
-1
@@ -114,7 +114,7 @@ int main() {
|
|||||||
Timer ChannelListProcessTimer(60000);
|
Timer ChannelListProcessTimer(60000);
|
||||||
Timer ClientConnectionPruneTimer(60000);
|
Timer ClientConnectionPruneTimer(60000);
|
||||||
|
|
||||||
Timer InterserverTimer(INTERSERVER_TIMER); // does auto-reconnect
|
Timer keepalive(INTERSERVER_TIMER); // does auto-reconnect
|
||||||
|
|
||||||
LogInfo("Starting EQEmu Universal Chat Server");
|
LogInfo("Starting EQEmu Universal Chat Server");
|
||||||
|
|
||||||
@@ -188,6 +188,10 @@ int main() {
|
|||||||
// crash_test.detach();
|
// crash_test.detach();
|
||||||
|
|
||||||
auto loop_fn = [&](EQ::Timer* t) {
|
auto loop_fn = [&](EQ::Timer* t) {
|
||||||
|
if (keepalive.Check()) {
|
||||||
|
keepalive.Start();
|
||||||
|
database.ping();
|
||||||
|
}
|
||||||
|
|
||||||
Timer::SetCurrentTime();
|
Timer::SetCurrentTime();
|
||||||
|
|
||||||
|
|||||||
@@ -507,11 +507,11 @@ void MainFrame::SaveActivity(wxCommandEvent& event)
|
|||||||
ourAct.optional = mActivityOptional->GetValue();
|
ourAct.optional = mActivityOptional->GetValue();
|
||||||
|
|
||||||
getStr = mActID->GetValue();
|
getStr = mActID->GetValue();
|
||||||
ourAct.activityId = atoi(getStr.mb_str());
|
ourAct.activityId = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mActStep->GetValue();
|
getStr = mActStep->GetValue();
|
||||||
ourAct.step = atoi(getStr.mb_str());
|
ourAct.step = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
int type = mActType->GetSelection();
|
int type = mActType->GetSelection();
|
||||||
@@ -530,17 +530,17 @@ void MainFrame::SaveActivity(wxCommandEvent& event)
|
|||||||
}
|
}
|
||||||
|
|
||||||
getStr = mActDeliver->GetValue();
|
getStr = mActDeliver->GetValue();
|
||||||
ourAct.deliverToNpc = atoi(getStr.mb_str());
|
ourAct.deliverToNpc = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
ourAct.goalmethod = mActMethod->GetSelection();
|
ourAct.goalmethod = mActMethod->GetSelection();
|
||||||
|
|
||||||
getStr = mActGoalID->GetValue();
|
getStr = mActGoalID->GetValue();
|
||||||
ourAct.goalid = atoi(getStr.mb_str());
|
ourAct.goalid = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mActGoalCount->GetValue();
|
getStr = mActGoalCount->GetValue();
|
||||||
ourAct.goalcount = atoi(getStr.mb_str());
|
ourAct.goalcount = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
if(ourAct.activityId == openedActivity.activityid && ourAct.id == openedActivity.id){
|
if(ourAct.activityId == openedActivity.activityid && ourAct.id == openedActivity.id){
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ bool MainFrame::LoadItems(){
|
|||||||
while ((row = mysql_fetch_row(res)) != NULL){
|
while ((row = mysql_fetch_row(res)) != NULL){
|
||||||
eqitem newIT;
|
eqitem newIT;
|
||||||
strcpy(newIT.name, row[0]);
|
strcpy(newIT.name, row[0]);
|
||||||
newIT.id = atoi(row[1]);
|
newIT.id = Strings::ToInt(row[1]);
|
||||||
itemList.push_back(newIT);
|
itemList.push_back(newIT);
|
||||||
itemsLoaded++;
|
itemsLoaded++;
|
||||||
}
|
}
|
||||||
@@ -127,7 +127,7 @@ bool MainFrame::LoadZones()
|
|||||||
eqtask_zones newZ;
|
eqtask_zones newZ;
|
||||||
strcpy(newZ.name, row[0]);
|
strcpy(newZ.name, row[0]);
|
||||||
|
|
||||||
newZ.id = atoi(row[1]);
|
newZ.id = Strings::ToInt(row[1]);
|
||||||
taskZoneList.push_back(newZ);
|
taskZoneList.push_back(newZ);
|
||||||
|
|
||||||
int * zoneId = new int;
|
int * zoneId = new int;
|
||||||
@@ -168,7 +168,7 @@ bool MainFrame::LoadTasks()
|
|||||||
res = mysql_use_result(mMysql);
|
res = mysql_use_result(mMysql);
|
||||||
while ((row = mysql_fetch_row(res)) != NULL){
|
while ((row = mysql_fetch_row(res)) != NULL){
|
||||||
eqtask newT;
|
eqtask newT;
|
||||||
newT.id = atoi(row[0]);
|
newT.id = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
//This isn't all that safe
|
//This isn't all that safe
|
||||||
//Working under the assumption that:
|
//Working under the assumption that:
|
||||||
@@ -185,15 +185,15 @@ bool MainFrame::LoadTasks()
|
|||||||
if(newT.id > highestIndex)
|
if(newT.id > highestIndex)
|
||||||
highestIndex = newT.id;
|
highestIndex = newT.id;
|
||||||
|
|
||||||
newT.rewardid = atoi(row[4]);
|
newT.rewardid = Strings::ToInt(row[4]);
|
||||||
newT.cashreward = atoi(row[5]);
|
newT.cashreward = Strings::ToInt(row[5]);
|
||||||
newT.xpreward = atoi(row[6]);
|
newT.xpreward = Strings::ToInt(row[6]);
|
||||||
newT.rewardmethod = atoi(row[7]);
|
newT.rewardmethod = Strings::ToInt(row[7]);
|
||||||
newT.startzone = atoi(row[8]);
|
newT.startzone = Strings::ToInt(row[8]);
|
||||||
newT.duration = atoi(row[9]);
|
newT.duration = Strings::ToInt(row[9]);
|
||||||
newT.level_min = atoi(row[10]);
|
newT.level_min = Strings::ToInt(row[10]);
|
||||||
newT.level_max = atoi(row[11]);
|
newT.level_max = Strings::ToInt(row[11]);
|
||||||
newT.repeatable = atoi(row[12]) ? true : false;
|
newT.repeatable = Strings::ToInt(row[12]) ? true : false;
|
||||||
|
|
||||||
taskList.push_back(newT);
|
taskList.push_back(newT);
|
||||||
|
|
||||||
@@ -225,8 +225,8 @@ bool MainFrame::LoadGoals()
|
|||||||
res = mysql_use_result(mMysql);
|
res = mysql_use_result(mMysql);
|
||||||
while ((row = mysql_fetch_row(res)) != NULL){
|
while ((row = mysql_fetch_row(res)) != NULL){
|
||||||
eqtask_goallist newGL;
|
eqtask_goallist newGL;
|
||||||
newGL.id = atoi(row[0]);
|
newGL.id = Strings::ToInt(row[0]);
|
||||||
newGL.value = atoi(row[1]);
|
newGL.value = Strings::ToInt(row[1]);
|
||||||
goalTaskList.push_back(newGL);
|
goalTaskList.push_back(newGL);
|
||||||
|
|
||||||
goalsLoaded++;
|
goalsLoaded++;
|
||||||
@@ -258,19 +258,19 @@ bool MainFrame::LoadActivities() {
|
|||||||
while ((row = mysql_fetch_row(res)) != NULL) {
|
while ((row = mysql_fetch_row(res)) != NULL) {
|
||||||
eqtask_activities newAL;
|
eqtask_activities newAL;
|
||||||
|
|
||||||
newAL.id = atoi(row[0]);
|
newAL.id = Strings::ToInt(row[0]);
|
||||||
newAL.activityId = atoi(row[1]);
|
newAL.activityId = Strings::ToInt(row[1]);
|
||||||
newAL.step = atoi(row[2]);
|
newAL.step = Strings::ToInt(row[2]);
|
||||||
newAL.activityType = atoi(row[3]);
|
newAL.activityType = Strings::ToInt(row[3]);
|
||||||
strcpy(newAL.text1, row[4]);
|
strcpy(newAL.text1, row[4]);
|
||||||
strcpy(newAL.text2, row[5]);
|
strcpy(newAL.text2, row[5]);
|
||||||
strcpy(newAL.text3, row[6]);
|
strcpy(newAL.text3, row[6]);
|
||||||
newAL.goalid = atoi(row[7]);
|
newAL.goalid = Strings::ToInt(row[7]);
|
||||||
newAL.goalmethod = atoi(row[8]);
|
newAL.goalmethod = Strings::ToInt(row[8]);
|
||||||
newAL.goalcount = atoi(row[9]);
|
newAL.goalcount = Strings::ToInt(row[9]);
|
||||||
newAL.deliverToNpc = atoi(row[10]);
|
newAL.deliverToNpc = Strings::ToInt(row[10]);
|
||||||
newAL.zoneid = atoi(row[11]);
|
newAL.zoneid = Strings::ToInt(row[11]);
|
||||||
newAL.optional = atoi(row[12]) ? true : false;
|
newAL.optional = Strings::ToInt(row[12]) ? true : false;
|
||||||
|
|
||||||
taskActivitiesList.push_back(newAL);
|
taskActivitiesList.push_back(newAL);
|
||||||
activitiesLoaded++;
|
activitiesLoaded++;
|
||||||
@@ -301,8 +301,8 @@ bool MainFrame::LoadProximity()
|
|||||||
while ((row = mysql_fetch_row(res)) != NULL){
|
while ((row = mysql_fetch_row(res)) != NULL){
|
||||||
eqtask_proximity newPR;
|
eqtask_proximity newPR;
|
||||||
|
|
||||||
newPR.zoneid = atoi(row[0]);
|
newPR.zoneid = Strings::ToInt(row[0]);
|
||||||
newPR.exploreid = atoi(row[1]);
|
newPR.exploreid = Strings::ToInt(row[1]);
|
||||||
newPR.minx = atof(row[2]);
|
newPR.minx = atof(row[2]);
|
||||||
newPR.maxx = atof(row[3]);
|
newPR.maxx = atof(row[3]);
|
||||||
newPR.miny = atof(row[4]);
|
newPR.miny = atof(row[4]);
|
||||||
|
|||||||
@@ -276,7 +276,7 @@ void MainFrame::SaveProximity(wxCommandEvent& event)
|
|||||||
|
|
||||||
inStr.Clear();
|
inStr.Clear();
|
||||||
inStr = mProxId->GetValue();
|
inStr = mProxId->GetValue();
|
||||||
toSave.exploreid = atoi(inStr.mb_str());
|
toSave.exploreid = Strings::ToInt(inStr.mb_str());
|
||||||
|
|
||||||
inStr.Clear();
|
inStr.Clear();
|
||||||
inStr = mProxMinx->GetValue();
|
inStr = mProxMinx->GetValue();
|
||||||
|
|||||||
@@ -195,7 +195,7 @@ void MainFrame::OnRewardButton(wxCommandEvent& event)
|
|||||||
{
|
{
|
||||||
wxString ridStr = mRewardID->GetValue();
|
wxString ridStr = mRewardID->GetValue();
|
||||||
int rtype = mRewardMethod->GetCurrentSelection();
|
int rtype = mRewardMethod->GetCurrentSelection();
|
||||||
int rid = atoi(ridStr.mb_str());
|
int rid = Strings::ToInt(ridStr.mb_str());
|
||||||
|
|
||||||
ShowRewardChange(rtype,rid);
|
ShowRewardChange(rtype,rid);
|
||||||
}
|
}
|
||||||
@@ -224,15 +224,15 @@ void MainFrame::SaveTask(wxCommandEvent& event)
|
|||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mTaskMinLvl->GetValue();
|
getStr = mTaskMinLvl->GetValue();
|
||||||
ourTask.level_min = atoi(getStr.mb_str());
|
ourTask.level_min = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mTaskMaxLvl->GetValue();
|
getStr = mTaskMaxLvl->GetValue();
|
||||||
ourTask.level_max = atoi(getStr.mb_str());
|
ourTask.level_max = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mTaskDuration->GetValue();
|
getStr = mTaskDuration->GetValue();
|
||||||
ourTask.duration = atoi(getStr.mb_str());
|
ourTask.duration = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mRewardName->GetValue();
|
getStr = mRewardName->GetValue();
|
||||||
@@ -240,15 +240,15 @@ void MainFrame::SaveTask(wxCommandEvent& event)
|
|||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mRewardID->GetValue();
|
getStr = mRewardID->GetValue();
|
||||||
ourTask.rewardid = atoi(getStr.mb_str());
|
ourTask.rewardid = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mRewardCash->GetValue();
|
getStr = mRewardCash->GetValue();
|
||||||
ourTask.cashreward = atoi(getStr.mb_str());
|
ourTask.cashreward = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
getStr = mRewardXP->GetValue();
|
getStr = mRewardXP->GetValue();
|
||||||
ourTask.xpreward = atoi(getStr.mb_str());
|
ourTask.xpreward = Strings::ToInt(getStr.mb_str());
|
||||||
getStr.Clear();
|
getStr.Clear();
|
||||||
|
|
||||||
int * i = (int*)mStartZone->GetClientData(mStartZone->GetSelection());
|
int * i = (int*)mStartZone->GetClientData(mStartZone->GetSelection());
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ bool load_paths_from_db(MYSQL *m, Map *map, const char *zone, list<PathGraph*> &
|
|||||||
cur->x = atof(row[0]);
|
cur->x = atof(row[0]);
|
||||||
cur->y = atof(row[1]);
|
cur->y = atof(row[1]);
|
||||||
cur->z = atof(row[2]);
|
cur->z = atof(row[2]);
|
||||||
cur_g = atoi(row[3]);
|
cur_g = Strings::ToInt(row[3]);
|
||||||
if(cur_g != last_g) {
|
if(cur_g != last_g) {
|
||||||
if(g != NULL) {
|
if(g != NULL) {
|
||||||
//if we have a first and last node for this path
|
//if we have a first and last node for this path
|
||||||
@@ -206,8 +206,8 @@ bool load_hints_from_db(MYSQL *m, const char *zone, list<PathNode*> &db_spawns)
|
|||||||
cur->x = atof(row[0]);
|
cur->x = atof(row[0]);
|
||||||
cur->y = atof(row[1]);
|
cur->y = atof(row[1]);
|
||||||
cur->z = atof(row[2]);
|
cur->z = atof(row[2]);
|
||||||
cur->forced = atoi(row[3])?true:false;
|
cur->forced = Strings::ToInt(row[3])?true:false;
|
||||||
cur->disjoint = atoi(row[4])?true:false;
|
cur->disjoint = Strings::ToInt(row[4])?true:false;
|
||||||
db_spawns.push_back(cur);
|
db_spawns.push_back(cur);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -242,27 +242,27 @@ bool load_settings_from_db(MYSQL *m, const char *zone) {
|
|||||||
|
|
||||||
int r = 0;
|
int r = 0;
|
||||||
if((row = mysql_fetch_row(res))) {
|
if((row = mysql_fetch_row(res))) {
|
||||||
INCLUDE_DOORS = atoi(row[r++])?true:false;
|
INCLUDE_DOORS = Strings::ToInt(row[r++])?true:false;
|
||||||
MIN_FIX_Z = atof(row[r++]);
|
MIN_FIX_Z = atof(row[r++]);
|
||||||
FEAR_MAXIMUM_DISTANCE = atof(row[r++]);
|
FEAR_MAXIMUM_DISTANCE = atof(row[r++]);
|
||||||
IMAGE_SCALE = atoi(row[r++]);
|
IMAGE_SCALE = Strings::ToInt(row[r++]);
|
||||||
SPLIT_INVALID_PATHS = atoi(row[r++])?true:false;
|
SPLIT_INVALID_PATHS = Strings::ToInt(row[r++])?true:false;
|
||||||
LINK_PATH_ENDPOINTS = atoi(row[r++])?true:false;
|
LINK_PATH_ENDPOINTS = Strings::ToInt(row[r++])?true:false;
|
||||||
ENDPOINT_CONNECT_MAX_DISTANCE = atof(row[r++]);
|
ENDPOINT_CONNECT_MAX_DISTANCE = atof(row[r++]);
|
||||||
SPLIT_LINE_LENGTH = atof(row[r++]);
|
SPLIT_LINE_LENGTH = atof(row[r++]);
|
||||||
SPLIT_LINE_INTERVAL = atof(row[r++]);
|
SPLIT_LINE_INTERVAL = atof(row[r++]);
|
||||||
CLOSE_ENOUGH = atof(row[r++]);
|
CLOSE_ENOUGH = atof(row[r++]);
|
||||||
CLOSE_ENOUGH_COMBINE = atof(row[r++]);
|
CLOSE_ENOUGH_COMBINE = atof(row[r++]);
|
||||||
MERGE_MIN_SECOND_DIST = atof(row[r++]);
|
MERGE_MIN_SECOND_DIST = atof(row[r++]);
|
||||||
COMBINE_CHECK_ALL_LOS = atoi(row[r++])?true:false;
|
COMBINE_CHECK_ALL_LOS = Strings::ToInt(row[r++])?true:false;
|
||||||
CROSS_REDUCE_COUNT = atoi(row[r++]);
|
CROSS_REDUCE_COUNT = Strings::ToInt(row[r++]);
|
||||||
CROSS_MIN_LENGTH = atof(row[r++]);
|
CROSS_MIN_LENGTH = atof(row[r++]);
|
||||||
CROSS_MAX_Z_DIFF = atof(row[r++]);
|
CROSS_MAX_Z_DIFF = atof(row[r++]);
|
||||||
CLOSE_ENOUGH_CROSS = atof(row[r++]);
|
CLOSE_ENOUGH_CROSS = atof(row[r++]);
|
||||||
|
|
||||||
SPAWN_MIN_SECOND_DIST = atof(row[r++]);
|
SPAWN_MIN_SECOND_DIST = atof(row[r++]);
|
||||||
MAX_LINK_SPAWN_DIST = atof(row[r++]);
|
MAX_LINK_SPAWN_DIST = atof(row[r++]);
|
||||||
int sc = atoi(row[r++]);
|
int sc = Strings::ToInt(row[r++]);
|
||||||
SPAWN_LINK_TWICE = sc >= 2?true:false;
|
SPAWN_LINK_TWICE = sc >= 2?true:false;
|
||||||
SPAWN_LINK_THRICE = sc >= 3?true:false;
|
SPAWN_LINK_THRICE = sc >= 3?true:false;
|
||||||
mysql_free_result(res);
|
mysql_free_result(res);
|
||||||
|
|||||||
@@ -1118,7 +1118,7 @@ void QTBuilder::AddPlaceable(FileLoader *fileloader, char *ZoneFileName, bool Li
|
|||||||
if((ch==EOF)||(ch=='\n')) {
|
if((ch==EOF)||(ch=='\n')) {
|
||||||
IniBuffer[StrIndex] = '\0';
|
IniBuffer[StrIndex] = '\0';
|
||||||
if(State == ReadingModelNumbers) {
|
if(State == ReadingModelNumbers) {
|
||||||
ModelNumber = atoi(IniBuffer);
|
ModelNumber = Strings::ToInt(IniBuffer);
|
||||||
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
||||||
{
|
{
|
||||||
fileloader->model_data.models[ModelNumber]->IncludeInMap = true;
|
fileloader->model_data.models[ModelNumber]->IncludeInMap = true;
|
||||||
@@ -1146,7 +1146,7 @@ void QTBuilder::AddPlaceable(FileLoader *fileloader, char *ZoneFileName, bool Li
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
ModelNumber = atoi(IniBuffer);
|
ModelNumber = Strings::ToInt(IniBuffer);
|
||||||
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
||||||
{
|
{
|
||||||
fileloader->model_data.models[ModelNumber]->IncludeInMap = true;
|
fileloader->model_data.models[ModelNumber]->IncludeInMap = true;
|
||||||
@@ -1323,7 +1323,7 @@ void QTBuilder::AddPlaceableV4(FileLoader *fileloader, char *ZoneFileName, bool
|
|||||||
Group = true;
|
Group = true;
|
||||||
strcpy(IniBuffer, IniBuffer+1);
|
strcpy(IniBuffer, IniBuffer+1);
|
||||||
}
|
}
|
||||||
ModelNumber = atoi(IniBuffer);
|
ModelNumber = Strings::ToInt(IniBuffer);
|
||||||
if(!Group)
|
if(!Group)
|
||||||
{
|
{
|
||||||
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
||||||
@@ -1369,7 +1369,7 @@ void QTBuilder::AddPlaceableV4(FileLoader *fileloader, char *ZoneFileName, bool
|
|||||||
Group = true;
|
Group = true;
|
||||||
strcpy(IniBuffer, IniBuffer+1);
|
strcpy(IniBuffer, IniBuffer+1);
|
||||||
}
|
}
|
||||||
ModelNumber = atoi(IniBuffer);
|
ModelNumber = Strings::ToInt(IniBuffer);
|
||||||
if(!Group)
|
if(!Group)
|
||||||
{
|
{
|
||||||
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
if((ModelNumber >= 0) && (ModelNumber < fileloader->model_data.model_count))
|
||||||
|
|||||||
@@ -278,7 +278,7 @@ int DATLoader::Open(char *base_path, char *zone_name, Archive *archive) {
|
|||||||
if(Token == "*QUADSPERTILE")
|
if(Token == "*QUADSPERTILE")
|
||||||
{
|
{
|
||||||
Token = GetToken(ZonBuffer, ZonPosition);
|
Token = GetToken(ZonBuffer, ZonPosition);
|
||||||
QuadsPerTile = atoi(Token.c_str());
|
QuadsPerTile = Strings::ToInt(Token.c_str());
|
||||||
#ifdef DEBUGDAT
|
#ifdef DEBUGDAT
|
||||||
printf("Set QuadsPerTile to %i\n", QuadsPerTile);
|
printf("Set QuadsPerTile to %i\n", QuadsPerTile);
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -97,7 +97,7 @@ FRAG_CONSTRUCTOR(Data15) {
|
|||||||
plac->scale[1] = hdr->scale[1];
|
plac->scale[1] = hdr->scale[1];
|
||||||
plac->scale[2] = hdr->scale[1];
|
plac->scale[2] = hdr->scale[1];
|
||||||
|
|
||||||
plac->model = atoi((const char*)&wld->sHash[-(int)hdr->ref]);
|
plac->model = Strings::ToInt((const char*)&wld->sHash[-(int)hdr->ref]);
|
||||||
|
|
||||||
pl = new Placeable *[wld->model_data.plac_count + 1];
|
pl = new Placeable *[wld->model_data.plac_count + 1];
|
||||||
memcpy(pl, wld->model_data.placeable, sizeof(Placeable *) * wld->model_data.plac_count);
|
memcpy(pl, wld->model_data.placeable, sizeof(Placeable *) * wld->model_data.plac_count);
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ int main(int argc, char *argv[]) {
|
|||||||
|
|
||||||
if(argc != 3)
|
if(argc != 3)
|
||||||
usage();
|
usage();
|
||||||
int charid = atoi(argv[1]);
|
int charid = Strings::ToInt(argv[1]);
|
||||||
if(charid == 0)
|
if(charid == 0)
|
||||||
usage();
|
usage();
|
||||||
outfile = argv[2];
|
outfile = argv[2];
|
||||||
@@ -91,7 +91,7 @@ int main(int argc, char *argv[]) {
|
|||||||
header.y = atof(row[4]);
|
header.y = atof(row[4]);
|
||||||
header.z = atof(row[5]);
|
header.z = atof(row[5]);
|
||||||
strcpy(header.zone_name, row[6]);
|
strcpy(header.zone_name, row[6]);
|
||||||
header.zone_id = atoi(row[7]);
|
header.zone_id = Strings::ToInt(row[7]);
|
||||||
//copy in blobs
|
//copy in blobs
|
||||||
ppbuffer = new char[header.profile_length];
|
ppbuffer = new char[header.profile_length];
|
||||||
eppbuffer = new char[header.extprofile_length];
|
eppbuffer = new char[header.extprofile_length];
|
||||||
@@ -114,8 +114,8 @@ int main(int argc, char *argv[]) {
|
|||||||
vector<FactionValueRecord> fr;
|
vector<FactionValueRecord> fr;
|
||||||
while((row = mysql_fetch_row(res))) {
|
while((row = mysql_fetch_row(res))) {
|
||||||
FactionValueRecord r;
|
FactionValueRecord r;
|
||||||
r.faction_id = atoi(row[0]);
|
r.faction_id = Strings::ToInt(row[0]);
|
||||||
r.current_value = atoi(row[1]);
|
r.current_value = Strings::ToInt(row[1]);
|
||||||
fr.push_back(r);
|
fr.push_back(r);
|
||||||
}
|
}
|
||||||
mysql_free_result(res);
|
mysql_free_result(res);
|
||||||
@@ -134,15 +134,15 @@ int main(int argc, char *argv[]) {
|
|||||||
vector<InventoryEntry> inv;
|
vector<InventoryEntry> inv;
|
||||||
while((row = mysql_fetch_row(res))) {
|
while((row = mysql_fetch_row(res))) {
|
||||||
InventoryEntry r;
|
InventoryEntry r;
|
||||||
r.slotid = atoi(row[0]);
|
r.slotid = Strings::ToInt(row[0]);
|
||||||
r.itemid = atoi(row[1]);
|
r.itemid = Strings::ToInt(row[1]);
|
||||||
r.charges = atoi(row[2]);
|
r.charges = Strings::ToInt(row[2]);
|
||||||
r.colors = atoi(row[3]);
|
r.colors = Strings::ToInt(row[3]);
|
||||||
r.augs[0] = atoi(row[4]);
|
r.augs[0] = Strings::ToInt(row[4]);
|
||||||
r.augs[1] = atoi(row[5]);
|
r.augs[1] = Strings::ToInt(row[5]);
|
||||||
r.augs[2] = atoi(row[6]);
|
r.augs[2] = Strings::ToInt(row[6]);
|
||||||
r.augs[3] = atoi(row[7]);
|
r.augs[3] = Strings::ToInt(row[7]);
|
||||||
r.augs[4] = atoi(row[8]);
|
r.augs[4] = Strings::ToInt(row[8]);
|
||||||
inv.push_back(r);
|
inv.push_back(r);
|
||||||
}
|
}
|
||||||
mysql_free_result(res);
|
mysql_free_result(res);
|
||||||
@@ -161,14 +161,14 @@ int main(int argc, char *argv[]) {
|
|||||||
vector<InventoryEntry> sb;
|
vector<InventoryEntry> sb;
|
||||||
while((row = mysql_fetch_row(res))) {
|
while((row = mysql_fetch_row(res))) {
|
||||||
InventoryEntry r;
|
InventoryEntry r;
|
||||||
r.slotid = atoi(row[0]);
|
r.slotid = Strings::ToInt(row[0]);
|
||||||
r.itemid = atoi(row[1]);
|
r.itemid = Strings::ToInt(row[1]);
|
||||||
r.charges = atoi(row[2]);
|
r.charges = Strings::ToInt(row[2]);
|
||||||
r.augs[0] = atoi(row[3]);
|
r.augs[0] = Strings::ToInt(row[3]);
|
||||||
r.augs[1] = atoi(row[4]);
|
r.augs[1] = Strings::ToInt(row[4]);
|
||||||
r.augs[2] = atoi(row[5]);
|
r.augs[2] = Strings::ToInt(row[5]);
|
||||||
r.augs[3] = atoi(row[6]);
|
r.augs[3] = Strings::ToInt(row[6]);
|
||||||
r.augs[4] = atoi(row[7]);
|
r.augs[4] = Strings::ToInt(row[7]);
|
||||||
sb.push_back(r);
|
sb.push_back(r);
|
||||||
}
|
}
|
||||||
mysql_free_result(res);
|
mysql_free_result(res);
|
||||||
@@ -187,11 +187,11 @@ int main(int argc, char *argv[]) {
|
|||||||
vector<QuestGlobalEntry> qg;
|
vector<QuestGlobalEntry> qg;
|
||||||
while((row = mysql_fetch_row(res))) {
|
while((row = mysql_fetch_row(res))) {
|
||||||
QuestGlobalEntry r;
|
QuestGlobalEntry r;
|
||||||
r.npcid = atoi(row[0]);
|
r.npcid = Strings::ToInt(row[0]);
|
||||||
r.zoneid = atoi(row[1]);
|
r.zoneid = Strings::ToInt(row[1]);
|
||||||
strcpy(r.name, row[2]);
|
strcpy(r.name, row[2]);
|
||||||
strcpy(r.value, row[3]);
|
strcpy(r.value, row[3]);
|
||||||
r.expdate = atoi(row[4]);
|
r.expdate = Strings::ToInt(row[4]);
|
||||||
qg.push_back(r);
|
qg.push_back(r);
|
||||||
}
|
}
|
||||||
mysql_free_result(res);
|
mysql_free_result(res);
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ int main(int argc, char *argv[]) {
|
|||||||
|
|
||||||
if(argc != 3)
|
if(argc != 3)
|
||||||
usage();
|
usage();
|
||||||
int accountid = atoi(argv[1]);
|
int accountid = Strings::ToInt(argv[1]);
|
||||||
if(accountid == 0)
|
if(accountid == 0)
|
||||||
usage();
|
usage();
|
||||||
infile = argv[2];
|
infile = argv[2];
|
||||||
|
|||||||
@@ -226,7 +226,7 @@ bool atobool(char* iBool) {
|
|||||||
return true;
|
return true;
|
||||||
if (!strcasecmp(iBool, "n"))
|
if (!strcasecmp(iBool, "n"))
|
||||||
return false;
|
return false;
|
||||||
if (atoi(iBool))
|
if (Strings::ToInt(iBool))
|
||||||
return true;
|
return true;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ void EQEmuDatabase::GetPlayer(std::string name)
|
|||||||
while ((row = mysql_fetch_row(res)) != NULL)
|
while ((row = mysql_fetch_row(res)) != NULL)
|
||||||
{
|
{
|
||||||
player_entry pe;
|
player_entry pe;
|
||||||
pe.id = atoi(row[1]);
|
pe.id = Strings::ToInt(row[1]);
|
||||||
pe.data = new char[sizeof(PlayerProfile_Struct)];
|
pe.data = new char[sizeof(PlayerProfile_Struct)];
|
||||||
memcpy(pe.data, row[0], sizeof(PlayerProfile_Struct));
|
memcpy(pe.data, row[0], sizeof(PlayerProfile_Struct));
|
||||||
player_list.push_back(pe);
|
player_list.push_back(pe);
|
||||||
@@ -97,7 +97,7 @@ void EQEmuDatabase::GetPlayers()
|
|||||||
while ((row = mysql_fetch_row(res)) != NULL)
|
while ((row = mysql_fetch_row(res)) != NULL)
|
||||||
{
|
{
|
||||||
player_entry pe;
|
player_entry pe;
|
||||||
pe.id = atoi(row[1]);
|
pe.id = Strings::ToInt(row[1]);
|
||||||
pe.data = new char[sizeof(PlayerProfile_Struct)];
|
pe.data = new char[sizeof(PlayerProfile_Struct)];
|
||||||
memcpy(pe.data, row[0], sizeof(PlayerProfile_Struct));
|
memcpy(pe.data, row[0], sizeof(PlayerProfile_Struct));
|
||||||
player_list.push_back(pe);
|
player_list.push_back(pe);
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ int main() {
|
|||||||
|
|
||||||
while((row = mysql_fetch_row(res))) {
|
while((row = mysql_fetch_row(res))) {
|
||||||
lengths = mysql_fetch_lengths(res);
|
lengths = mysql_fetch_lengths(res);
|
||||||
unsigned long id = atoi(row[0]);
|
unsigned long id = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
int curlen = lengths[2];
|
int curlen = lengths[2];
|
||||||
|
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ int main() {
|
|||||||
|
|
||||||
while((row = mysql_fetch_row(res))) {
|
while((row = mysql_fetch_row(res))) {
|
||||||
lengths = mysql_fetch_lengths(res);
|
lengths = mysql_fetch_lengths(res);
|
||||||
unsigned long id = atoi(row[0]);
|
unsigned long id = Strings::ToInt(row[0]);
|
||||||
|
|
||||||
int curlen = lengths[2];
|
int curlen = lengths[2];
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ int main(int argc, char** argv) {
|
|||||||
return(1);
|
return(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
spid = atoi(argv[1]);
|
spid = Strings::ToInt(argv[1]);
|
||||||
|
|
||||||
|
|
||||||
int tempid=0;
|
int tempid=0;
|
||||||
@@ -35,7 +35,7 @@ int main(int argc, char** argv) {
|
|||||||
if(spell_line[0]=='\0')
|
if(spell_line[0]=='\0')
|
||||||
break;
|
break;
|
||||||
|
|
||||||
tempid = atoi(sep.arg[0]);
|
tempid = Strings::ToInt(sep.arg[0]);
|
||||||
if(tempid != spid)
|
if(tempid != spid)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -55,75 +55,75 @@ int main(int argc, char** argv) {
|
|||||||
sp.aoerange=atof(sep.arg[10]);
|
sp.aoerange=atof(sep.arg[10]);
|
||||||
sp.pushback=atof(sep.arg[11]);
|
sp.pushback=atof(sep.arg[11]);
|
||||||
sp.pushup=atof(sep.arg[12]);
|
sp.pushup=atof(sep.arg[12]);
|
||||||
sp.cast_time=atoi(sep.arg[13]);
|
sp.cast_time=Strings::ToInt(sep.arg[13]);
|
||||||
sp.recovery_time=atoi(sep.arg[14]);
|
sp.recovery_time=Strings::ToInt(sep.arg[14]);
|
||||||
sp.recast_time=atoi(sep.arg[15]);
|
sp.recast_time=Strings::ToInt(sep.arg[15]);
|
||||||
sp.buffdurationformula=atoi(sep.arg[16]);
|
sp.buffdurationformula=Strings::ToInt(sep.arg[16]);
|
||||||
sp.buffduration=atoi(sep.arg[17]);
|
sp.buffduration=Strings::ToInt(sep.arg[17]);
|
||||||
sp.AEDuration=atoi(sep.arg[18]);
|
sp.AEDuration=Strings::ToInt(sep.arg[18]);
|
||||||
sp.mana=atoi(sep.arg[19]);
|
sp.mana=Strings::ToInt(sep.arg[19]);
|
||||||
|
|
||||||
int y=0;
|
int y=0;
|
||||||
for(y=0; y < EFFECT_COUNT;y++)
|
for(y=0; y < EFFECT_COUNT;y++)
|
||||||
sp.base[y]=atoi(sep.arg[20+y]);
|
sp.base[y]=Strings::ToInt(sep.arg[20+y]);
|
||||||
for(y=0;y<11;y++)
|
for(y=0;y<11;y++)
|
||||||
sp.base2[y]=atoi(sep.arg[33+y]);
|
sp.base2[y]=Strings::ToInt(sep.arg[33+y]);
|
||||||
for(y=0; y < EFFECT_COUNT;y++)
|
for(y=0; y < EFFECT_COUNT;y++)
|
||||||
sp.max[y]=atoi(sep.arg[44+y]);
|
sp.max[y]=Strings::ToInt(sep.arg[44+y]);
|
||||||
|
|
||||||
sp.icon=atoi(sep.arg[56]);
|
sp.icon=Strings::ToInt(sep.arg[56]);
|
||||||
sp.memicon=atoi(sep.arg[57]);
|
sp.memicon=Strings::ToInt(sep.arg[57]);
|
||||||
|
|
||||||
for(y=0; y< 4;y++)
|
for(y=0; y< 4;y++)
|
||||||
sp.components[y]=atoi(sep.arg[58+y]);
|
sp.components[y]=Strings::ToInt(sep.arg[58+y]);
|
||||||
|
|
||||||
for(y=0; y< 4;y++)
|
for(y=0; y< 4;y++)
|
||||||
sp.component_counts[y]=atoi(sep.arg[62+y]);
|
sp.component_counts[y]=Strings::ToInt(sep.arg[62+y]);
|
||||||
|
|
||||||
for(y=0; y< 4;y++)
|
for(y=0; y< 4;y++)
|
||||||
sp.NoexpendReagent[y]=atoi(sep.arg[66+y]);
|
sp.NoexpendReagent[y]=Strings::ToInt(sep.arg[66+y]);
|
||||||
|
|
||||||
for(y=0; y< 12;y++)
|
for(y=0; y< 12;y++)
|
||||||
sp.formula[y]=atoi(sep.arg[70+y]);
|
sp.formula[y]=Strings::ToInt(sep.arg[70+y]);
|
||||||
|
|
||||||
sp.LightType=atoi(sep.arg[82]);
|
sp.LightType=Strings::ToInt(sep.arg[82]);
|
||||||
sp.goodEffect=atoi(sep.arg[83]);
|
sp.goodEffect=Strings::ToInt(sep.arg[83]);
|
||||||
sp.Activated=atoi(sep.arg[84]);
|
sp.Activated=Strings::ToInt(sep.arg[84]);
|
||||||
sp.resisttype=atoi(sep.arg[85]);
|
sp.resisttype=Strings::ToInt(sep.arg[85]);
|
||||||
|
|
||||||
for(y=0; y< 12;y++)
|
for(y=0; y< 12;y++)
|
||||||
sp.effectid[y]=atoi(sep.arg[86+y]);
|
sp.effectid[y]=Strings::ToInt(sep.arg[86+y]);
|
||||||
|
|
||||||
sp.targettype=(SpellTargetType)atoi(sep.arg[98]);
|
sp.targettype=(SpellTargetType)Strings::ToInt(sep.arg[98]);
|
||||||
sp.basediff=atoi(sep.arg[99]);
|
sp.basediff=Strings::ToInt(sep.arg[99]);
|
||||||
sp.skill=(SkillType)atoi(sep.arg[100]);
|
sp.skill=(SkillType)Strings::ToInt(sep.arg[100]);
|
||||||
sp.zonetype=atoi(sep.arg[101]);
|
sp.zonetype=Strings::ToInt(sep.arg[101]);
|
||||||
sp.EnvironmentType=atoi(sep.arg[102]);
|
sp.EnvironmentType=Strings::ToInt(sep.arg[102]);
|
||||||
sp.TimeOfDay=atoi(sep.arg[103]);
|
sp.TimeOfDay=Strings::ToInt(sep.arg[103]);
|
||||||
|
|
||||||
for(y=0; y< 16;y++)
|
for(y=0; y< 16;y++)
|
||||||
sp.classes[y]=atoi(sep.arg[104+y]);
|
sp.classes[y]=Strings::ToInt(sep.arg[104+y]);
|
||||||
|
|
||||||
sp.CastingAnim=atoi(sep.arg[120]);
|
sp.CastingAnim=Strings::ToInt(sep.arg[120]);
|
||||||
sp.TargetAnim=atoi(sep.arg[121]);
|
sp.TargetAnim=Strings::ToInt(sep.arg[121]);
|
||||||
sp.TravelType=atoi(sep.arg[122]);
|
sp.TravelType=Strings::ToInt(sep.arg[122]);
|
||||||
sp.SpellAffectIndex=atoi(sep.arg[123]);
|
sp.SpellAffectIndex=Strings::ToInt(sep.arg[123]);
|
||||||
|
|
||||||
for(y=0; y< 23;y++) {
|
for(y=0; y< 23;y++) {
|
||||||
sp.spacing124[y]=atoi(sep.arg[124+y]);
|
sp.spacing124[y]=Strings::ToInt(sep.arg[124+y]);
|
||||||
}
|
}
|
||||||
|
|
||||||
sp.ResistDiff=atoi(sep.arg[147]);
|
sp.ResistDiff=Strings::ToInt(sep.arg[147]);
|
||||||
sp.dot_stacking_exempt=atoi(sep.arg[148]);
|
sp.dot_stacking_exempt=Strings::ToInt(sep.arg[148]);
|
||||||
sp.deletable=atoi(sep.arg[149]);
|
sp.deletable=Strings::ToInt(sep.arg[149]);
|
||||||
|
|
||||||
sp.RecourseLink = atoi(sep.arg[150]);
|
sp.RecourseLink = Strings::ToInt(sep.arg[150]);
|
||||||
sp.descnum = atoi(sep.arg[155]);
|
sp.descnum = Strings::ToInt(sep.arg[155]);
|
||||||
sp.typedescnum = atoi(sep.arg[156]);
|
sp.typedescnum = Strings::ToInt(sep.arg[156]);
|
||||||
sp.effectdescnum = atoi(sep.arg[157]);
|
sp.effectdescnum = Strings::ToInt(sep.arg[157]);
|
||||||
|
|
||||||
// for(y=0; y< 17;y++)
|
// for(y=0; y< 17;y++)
|
||||||
// sp.Spacing4[y] = atoi(sep.arg[158+y]);
|
// sp.Spacing4[y] = Strings::ToInt(sep.arg[158+y]);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ require (
|
|||||||
require (
|
require (
|
||||||
github.com/golang/protobuf v1.3.2 // indirect
|
github.com/golang/protobuf v1.3.2 // indirect
|
||||||
github.com/google/go-querystring v1.1.0 // indirect
|
github.com/google/go-querystring v1.1.0 // indirect
|
||||||
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5 // indirect
|
golang.org/x/crypto v0.1.0 // indirect
|
||||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 // indirect
|
golang.org/x/net v0.7.0 // indirect
|
||||||
google.golang.org/appengine v1.6.7 // indirect
|
google.golang.org/appengine v1.6.7 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -9,11 +9,13 @@ github.com/google/go-github/v41 v41.0.0/go.mod h1:XgmCA5H323A9rtgExdTcnDkcqp6S30
|
|||||||
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
|
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
|
||||||
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
|
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
|
||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5 h1:HWj/xjIHfjYU5nVXpTM0s39J9CbLn7Cc5a7IC5rwsMQ=
|
|
||||||
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||||
|
golang.org/x/crypto v0.1.0 h1:MDRAIl0xIo9Io2xV565hzXHw3zVseKrJKodhohM5CjU=
|
||||||
|
golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw=
|
||||||
golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
|
golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks=
|
||||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110 h1:qWPm9rbaAMKs8Bq/9LRpbMqxWRVUAQwMI9fVrssnTfw=
|
|
||||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||||
|
golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g=
|
||||||
|
golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
|
||||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be h1:vEDujvNQGv4jgYKudGeI/+DAX4Jffq6hpD55MmoEvKs=
|
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be h1:vEDujvNQGv4jgYKudGeI/+DAX4Jffq6hpD55MmoEvKs=
|
||||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
|
|||||||
@@ -72,13 +72,7 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if len(os.Getenv("RCLONE_FTP_PASS")) == 0 {
|
if len(os.Getenv("RCLONE_FTP_PASS")) == 0 {
|
||||||
fmt.Printf("Missing RCLONE_FTP_PASS no need to deploy\n")
|
fmt.Printf("Missing RCLONE_FTP_PASS no need to release\n")
|
||||||
fmt.Printf("Exiting code 78 to halt pipeline steps gracefully\n")
|
|
||||||
os.Exit(78)
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(os.Getenv("GH_RELEASE_GITHUB_API_TOKEN")) == 0 {
|
|
||||||
fmt.Printf("Missing GH_RELEASE_GITHUB_API_TOKEN no need to deploy\n")
|
|
||||||
fmt.Printf("Exiting code 78 to halt pipeline steps gracefully\n")
|
fmt.Printf("Exiting code 78 to halt pipeline steps gracefully\n")
|
||||||
os.Exit(78)
|
os.Exit(78)
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,3 @@
|
|||||||
try
|
|
||||||
{
|
|
||||||
$cwd = Get-Location
|
$cwd = Get-Location
|
||||||
|
|
||||||
Set-Location -Path "$cwd"
|
Set-Location -Path "$cwd"
|
||||||
@@ -21,6 +19,8 @@ try
|
|||||||
cmake --build . --config RelWithDebInfo --clean-first
|
cmake --build . --config RelWithDebInfo --clean-first
|
||||||
Set-Location -Path "$cwd"
|
Set-Location -Path "$cwd"
|
||||||
|
|
||||||
|
if ($LASTEXITCODE -ne 0) { echo "Build emitted error"; exit 1 }
|
||||||
|
|
||||||
.\utils\scripts\build\should-release\should-release.exe; if ($LASTEXITCODE -ne 0) { exit }
|
.\utils\scripts\build\should-release\should-release.exe; if ($LASTEXITCODE -ne 0) { exit }
|
||||||
|
|
||||||
# trim some fat
|
# trim some fat
|
||||||
@@ -39,11 +39,4 @@ try
|
|||||||
rclone config create remote ftp env_auth true
|
rclone config create remote ftp env_auth true
|
||||||
rclone copy eqemu-server-windows-x64.zip remote: 2>&1
|
rclone copy eqemu-server-windows-x64.zip remote: 2>&1
|
||||||
rclone ls remote: 2>&1
|
rclone ls remote: 2>&1
|
||||||
}
|
|
||||||
catch
|
|
||||||
{
|
|
||||||
Write-Host ("Caught signal to end")
|
|
||||||
Write-Host $_
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -474,6 +474,8 @@
|
|||||||
9218|2023_01_24_item_recast.sql|show columns from character_item_recast like '%recast_type%'|contains|smallint
|
9218|2023_01_24_item_recast.sql|show columns from character_item_recast like '%recast_type%'|contains|smallint
|
||||||
9219|2023_01_29_merchant_status_requirements.sql|SHOW COLUMNS FROM merchantlist LIKE 'min_status'|empty|
|
9219|2023_01_29_merchant_status_requirements.sql|SHOW COLUMNS FROM merchantlist LIKE 'min_status'|empty|
|
||||||
9220|2022_12_19_player_events_tables.sql|SHOW TABLES LIKE 'player_event_logs'|empty|
|
9220|2022_12_19_player_events_tables.sql|SHOW TABLES LIKE 'player_event_logs'|empty|
|
||||||
|
9221|2023_02_24_npc_scaling_zone_id_instance_version.sql|SHOW COLUMNS FROM `npc_scale_global_base` LIKE 'zone_id'|empty|
|
||||||
|
9222|2023_02_28_npc_scaling_zone_list_version_list.sql|SHOW COLUMNS FROM `npc_scale_global_base` LIKE 'zone_id_list'|empty|
|
||||||
|
|
||||||
# Upgrade conditions:
|
# Upgrade conditions:
|
||||||
# This won't be needed after this system is implemented, but it is used database that are not
|
# This won't be needed after this system is implemented, but it is used database that are not
|
||||||
|
|||||||
@@ -36,6 +36,7 @@
|
|||||||
9035|2022_12_04_bot_archery.sql|SHOW COLUMNS FROM `bot_data` LIKE 'archery_setting'|empty|
|
9035|2022_12_04_bot_archery.sql|SHOW COLUMNS FROM `bot_data` LIKE 'archery_setting'|empty|
|
||||||
9036|2023_01_19_drop_bot_views.sql|SHOW TABLES LIKE 'vw_groups'|not_empty|
|
9036|2023_01_19_drop_bot_views.sql|SHOW TABLES LIKE 'vw_groups'|not_empty|
|
||||||
9037|2023_01_22_add_name_index.sql||show index from bot_data WHERE key_name = 'name`|empty|
|
9037|2023_01_22_add_name_index.sql||show index from bot_data WHERE key_name = 'name`|empty|
|
||||||
|
9038|2023_02_16_add_caster_range.sql|SHOW COLUMNS FROM `bot_data` LIKE 'caster_range'|empty|
|
||||||
|
|
||||||
# Upgrade conditions:
|
# Upgrade conditions:
|
||||||
# This won't be needed after this system is implemented, but it is used database that are not
|
# This won't be needed after this system is implemented, but it is used database that are not
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
ALTER TABLE `bot_data`
|
||||||
|
ADD COLUMN `caster_range` INT(11) UNSIGNED NOT NULL DEFAULT '300' AFTER `archery_setting`;
|
||||||
@@ -0,0 +1,305 @@
|
|||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8172, 1, 'mischiefplane', 0, 'POMDOOR201', 740.388, -1038.75, 122.85, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8173, 2, 'mischiefplane', 0, 'POMDOOR201', 275.25, -525.013, 145.27, 128, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8174, 3, 'mischiefplane', 0, 'POMDOOR201', 164.949, -553.374, 115.25, 128, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8175, 4, 'mischiefplane', 0, 'POMDOOR201', 55, -950.956, 115.213, 129, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8176, 5, 'mischiefplane', 0, 'POMDOOR201', 251.111, -864.781, 115.123, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8177, 6, 'mischiefplane', 0, 'POMDOOR201', 186.406, -1084.5, 115.345, 257, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8178, 7, 'mischiefplane', 0, 'POMDOOR201', 179.387, -1084.59, 115.345, 256, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8179, 8, 'mischiefplane', 0, 'POMDOOR201', 586.75, 96.25, 144.438, 384, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8180, 9, 'mischiefplane', 0, 'POMDOOR201', 586.75, 105.32, 144.438, 383, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8181, 10, 'mischiefplane', 0, 'POMDOOR201', 345.037, 258.236, 115, 127, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8182, 11, 'mischiefplane', 0, 'POMDOOR201', 359.844, 229.924, 115, 384, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8183, 12, 'mischiefplane', 0, 'POMDOOR201', 59.9314, 110.174, 115.25, 383, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8184, 13, 'mischiefplane', 0, 'POMDOOR201', -20.2295, -385.07, 120, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8185, 14, 'mischiefplane', 0, 'JNTREE104', 1247.1, -404.761, 265.908, 253.4, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8186, 15, 'mischiefplane', 0, 'BRISPORT202', 339.875, -39.4209, 178.09, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8187, 16, 'mischiefplane', 0, 'CHANDALIER200', 222.419, 229.656, 172.19, 375.7, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8188, 17, 'mischiefplane', 0, 'POMDOOR202', 1525.55, -389.829, -9.90946, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8189, 18, 'mischiefplane', 0, 'POMDOOR202', 1339.4, -359.905, -9.90946, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8190, 19, 'mischiefplane', 0, 'POMDOOR202', 1144.7, -252.963, -9.90946, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8191, 20, 'mischiefplane', 0, 'POMDOOR202', 1139.4, -176.89, -9.92395, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8192, 21, 'mischiefplane', 0, 'POMDOOR202', 1309.52, -49.9891, -9.92395, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8193, 22, 'mischiefplane', 0, 'POMDOOR202', 1469.62, -169.907, -9.97395, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8194, 23, 'mischiefplane', 0, 'POMDOOR201', 1320.52, 227.861, -9.99347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8195, 24, 'mischiefplane', 0, 'POMDOOR200', 646.5, -152.867, 174.94, 255.66, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8196, 25, 'mischiefplane', 0, 'POMDOOR200', 646.5, -132.942, 174.94, 257.34, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8197, 26, 'mischiefplane', 0, 'POMDOOR200', 661.813, -86.6188, 174.94, 130.14, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 760, 175, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8198, 27, 'mischiefplane', 0, 'POMDOOR200', 646.5, -112.935, 174.94, 255.96, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8199, 28, 'mischiefplane', 0, 'POMDOOR200', 681.75, -86.5188, 174.94, 128.1, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8200, 29, 'mischiefplane', 0, 'POMDOOR200', 801.734, -111.417, 114.971, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8201, 30, 'mischiefplane', 0, 'POMDOOR200', 911.08, -362.772, 114.971, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8202, 31, 'mischiefplane', 0, 'POMDOOR200', 727.611, -688.413, 114.971, 385.36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8203, 32, 'mischiefplane', 0, 'POMTORCH200', 722.153, -670.469, 123.221, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8204, 33, 'mischiefplane', 0, 'POMTORCH200', 467.527, -1138.68, 123.121, 256, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8205, 34, 'mischiefplane', 0, 'POMDOOR200', 392.808, -1128.09, 114.971, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8206, 35, 'mischiefplane', 0, 'BRISPORT202', 629.286, 179.871, 181.94, 127.52, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8207, 36, 'mischiefplane', 0, 'POMDOOR203', 1379.88, -950.369, -9.99143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8208, 37, 'mischiefplane', 0, 'POMDOOR203', 1709.04, -989.59, -9.99143, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8209, 38, 'mischiefplane', 0, 'POMDOOR203', 1734.37, -1335.35, -9.92482, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8210, 39, 'mischiefplane', 0, 'POMDOOR201', 1341.19, 6.90461, -9.99347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8211, 40, 'mischiefplane', 0, 'POMDOOR201', 1466.28, -7.96457, -9.99347, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8212, 41, 'mischiefplane', 0, 'POMDOOR200', 521.813, -93.3971, 180.924, 128, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8213, 42, 'mischiefplane', 0, 'POMDOOR206', 302.132, -155.263, 168.001, 256, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8214, 43, 'mischiefplane', 0, 'POMDOOR200', 86.6493, -2.00653, 179.89, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8215, 44, 'mischiefplane', 0, 'POMDOOR200', 102.875, 213.431, 179.89, 383.78, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8216, 45, 'mischiefplane', 0, 'POMDOOR205', 143.631, 262.86, 179.879, 0.560303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8217, 46, 'mischiefplane', 0, 'BRISPORT202', 159.888, 257.147, 170.039, 256, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 230, 175, 135, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8218, 47, 'mischiefplane', 0, 'POMDOOR200', 328.905, -923.639, 114.971, 1.32091, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 230, 175, 135, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8219, 48, 'mischiefplane', 0, 'POMDOOR205', 706.73, 116.494, 143.982, 128, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 230, 175, 135, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8220, 49, 'mischiefplane', 0, 'KNBOOKC101', 727.26, 71.9691, 143.955, 384, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8221, 50, 'mischiefplane', 0, 'POMDOOR200', 706.719, 208.406, 143.944, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8222, 51, 'mischiefplane', 0, 'KNBOOKC101', 735.469, 252.906, 143.944, 128, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8223, 52, 'mischiefplane', 0, 'KNBOOKC101', 509.329, 7.01836, 174.94, 384, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8224, 53, 'mischiefplane', 0, 'POMDOOR200', 539.287, 22.9663, 174.94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8225, 54, 'mischiefplane', 0, 'POMDOOR205', 661.771, 296.36, 174.94, 128, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8226, 55, 'mischiefplane', 0, 'POMTORCH200', -0.914244, -467.462, 152.996, 384, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8227, 56, 'mischiefplane', 0, 'POMDOOR200', -18.481, -472.763, 144.946, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8228, 57, 'mischiefplane', 0, 'POMDOOR200', -16.4709, -311.962, 144.946, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8229, 58, 'mischiefplane', 0, 'POMDOOR200', 91.9687, 213.388, 114.971, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8230, 59, 'mischiefplane', 0, 'POMDOOR200', 141.554, -1122.54, 114.971, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8231, 60, 'mischiefplane', 0, 'POMDOOR200', 102.898, -1073.09, 114.971, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8232, 61, 'mischiefplane', 0, 'POMDOOR200', 201.988, -1106.12, 114.971, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8233, 62, 'mischiefplane', 0, 'POMDOOR200', 212.827, -1128.02, 114.971, 383.66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8234, 63, 'mischiefplane', 0, 'POMDOOR200', 108.481, -0.034598, 114.971, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8235, 64, 'mischiefplane', 0, 'POMTORCH200', 45.9188, 162.501, 122.571, 128, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8236, 65, 'mischiefplane', 0, 'POMDOOR200', 137.03, 173.493, 94.9707, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8237, 66, 'mischiefplane', 0, 'POMDOOR200', 86.4347, 156.952, 114.971, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8238, 67, 'mischiefplane', 0, 'POMTORCH200', 90.8187, 134.949, 122.721, 128, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8239, 68, 'mischiefplane', 0, 'POMTORCH200', 90.8688, 189.354, 122.721, 128, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8240, 69, 'mischiefplane', 0, 'POMTORCH200', 114.451, 240.787, 121.971, 317, 59, 0, 0, 0, 0, 0, 0, 0, 0, 1, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8241, 70, 'mischiefplane', 0, 'POMDOOR200', 143.387, 262.861, 114.971, 0.719619, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8242, 71, 'mischiefplane', 0, 'BOOKREG200', 286.381, 78.2721, 119.573, 0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8243, 72, 'mischiefplane', 0, 'POMDOOR200', 148.406, 82.9282, 114.971, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8244, 73, 'mischiefplane', 0, 'POMDOOR200', 17.2007, -277.04, 144.951, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8245, 74, 'mischiefplane', 0, 'POMTORCH200', 642.535, 314.025, 182.94, 0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8246, 75, 'mischiefplane', 0, 'BRISPORT202', 660.344, 267.579, 177.69, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8247, 76, 'mischiefplane', 0, 'BRISPORT202', 439.912, 304.528, 178.94, 259.58, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8248, 77, 'mischiefplane', 0, 'KNBOOKC101', 441.923, 267.972, 174.94, 256, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8249, 78, 'mischiefplane', 0, 'POMTORCH200', 740.009, 114.144, 151.871, 0, 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8250, 79, 'mischiefplane', 0, 'POMTHRONE200', 820.064, -820.657, 125.006, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 421, 1428, -5, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8251, 80, 'mischiefplane', 0, 'POMTHRONE200', 819.985, -1098.55, 125.009, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 335, 170, 66, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8252, 81, 'mischiefplane', 0, 'POMDOOR205', 226.927, 108.624, 186.89, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 421, 1428, -5, 66, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8253, 82, 'mischiefplane', 0, 'BRISPORT202', 734.419, 269.856, 146.644, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8254, 83, 'mischiefplane', 0, 'POMDOOR205', 536.231, 312.847, 174.94, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8255, 84, 'mischiefplane', 0, 'POMDOOR200', 641.779, 113.463, 174.94, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8256, 85, 'mischiefplane', 0, 'POMDOOR200', 412.76, -146.571, 180.89, 382.88, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8257, 86, 'mischiefplane', 0, 'POMDOOR200', 216.942, 295.666, 186.89, 128.319, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8258, 87, 'mischiefplane', 0, 'POMDOOR200', 229.889, 168.497, 184.89, 384, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8259, 88, 'mischiefplane', 0, 'POMDOOR201', 1428.14, 141.957, -9.99198, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8260, 89, 'mischiefplane', 0, 'POMDOOR200', 108.367, -649.859, 114.971, 0.139709, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8261, 90, 'mischiefplane', 0, 'POMDOOR205', 177.857, -505.792, 144.971, 384, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8262, 91, 'mischiefplane', 0, 'POMDOOR200', 17.0805, -505.666, 144.971, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8263, 92, 'mischiefplane', 0, 'POMDOOR205', 86.3992, -649.932, 114.971, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8264, 93, 'mischiefplane', 0, 'POMDOOR200', 86.4089, -839.605, 114.971, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8265, 94, 'mischiefplane', 0, 'POMDOOR200', 173.432, -911.68, 114.971, 0.659769, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8266, 95, 'mischiefplane', 0, 'POMDOOR200', 223.526, -866.734, 114.971, 2.50012, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8267, 96, 'mischiefplane', 0, 'POMDOOR200', 141.386, -877.641, 114.971, 254.92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8268, 97, 'mischiefplane', 0, 'POMDOOR200', 222.369, -967.522, 114.971, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8269, 98, 'mischiefplane', 0, 'SLTOME200', 722.469, -732.545, 114.971, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8270, 99, 'mischiefplane', 0, 'POMDOOR205', 911.12, -282.074, 114.971, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8271, 100, 'mischiefplane', 0, 'POMDOOR200', 541.785, -66.5416, 114.971, 128.58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8272, 101, 'mischiefplane', 0, 'POMDOOR205', 541.852, -88.1934, 114.971, 128, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8273, 102, 'mischiefplane', 0, 'DOOR2', 336.946, -327.68, 70.0768, 128, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 114, 712, 147, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8274, 103, 'mischiefplane', 0, 'POMDOOR200', 672.691, -168.587, 174.94, 384.68, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8275, 104, 'mischiefplane', 0, 'POMDOOR200', 692.703, -168.538, 174.94, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8276, 105, 'mischiefplane', 0, 'POMDOOR200', 712.646, -168.548, 174.94, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8277, 106, 'mischiefplane', 0, 'POMDOOR200', 728.545, -121.971, 174.94, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8278, 107, 'mischiefplane', 0, 'POMDOOR200', 728.526, -142.028, 174.94, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8279, 108, 'mischiefplane', 0, 'POMDOOR200', 728.469, -102.029, 174.94, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8280, 109, 'mischiefplane', 0, 'POMDOOR200', 701.777, -86.4187, 174.94, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8281, 110, 'mischiefplane', 0, 'BRISPORT202', 754.738, -127.791, 177.84, 255, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -390, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8282, 111, 'mischiefplane', 0, 'POMDOOR201', 828.597, -119.978, 174.94, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8283, 112, 'mischiefplane', 0, 'POMDOOR200', 322.83, 246.447, 114.971, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8284, 113, 'mischiefplane', 0, 'POMDOOR205', 322.868, 268.328, 114.971, 256, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8285, 114, 'mischiefplane', 0, 'POMDOOR204', 1425.4, 262.936, -9.94849, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8286, 115, 'mischiefplane', 0, 'POMDOOR204', 1383.55, 270.848, -9.94849, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8287, 116, 'mischiefplane', 0, 'POMDOOR204', 1340.3, 293.837, -9.99071, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8288, 117, 'mischiefplane', 0, 'POMDOOR204', 1329.41, 325.914, -9.89849, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8289, 118, 'mischiefplane', 0, 'POMDOOR204', 1366.61, 356.846, -9.94849, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8290, 119, 'mischiefplane', 0, 'POMDOOR204', 1402.48, 325.893, -9.94849, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8291, 120, 'mischiefplane', 0, 'POMDOOR204', 1413.37, 375.882, -9.94749, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8292, 121, 'mischiefplane', 0, 'POMDOOR201', 1208.34, 142.944, -9.93711, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8293, 122, 'mischiefplane', 0, 'POMDOOR201', 1211.62, 77.9356, -9.99347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8294, 123, 'mischiefplane', 0, 'POMDOOR203', 1529.23, -649.707, -9.93114, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8295, 124, 'mischiefplane', 0, 'POMDOOR203', 1260.08, -429.852, -9.94143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8296, 125, 'mischiefplane', 0, 'POMDOOR203', 969.362, -659.699, -9.99144, 256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8297, 126, 'mischiefplane', 0, 'POMDOOR203', 1040.18, -759.705, -9.94143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8298, 127, 'mischiefplane', 0, 'POMDOOR203', 1734.32, -734.62, -9.89143, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8299, 128, 'mischiefplane', 0, 'PURPTREE200', -1017, -353.7, 91.0007, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'cobaltscar', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8300, 129, 'mischiefplane', 0, 'BRISPORT202', 62.75, -186.838, 117.871, 384.52, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -6, 83, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8301, 130, 'mischiefplane', 0, 'POMTORCH200', 40.9188, -27.6989, 123.027, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -180, 112, 115, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8302, 131, 'mischiefplane', 0, 'ERPLANT4', 152.073, -155, 118.477, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -415, 1520, 270, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8303, 132, 'mischiefplane', 0, 'BRISPORT202', 132.763, -186.894, 117.821, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -180, 80, 115, 255, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8304, 133, 'mischiefplane', 0, 'BOOKREG200', 231.655, -114.504, 119.161, 170, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 280, 115, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8305, 134, 'mischiefplane', 0, 'POMTORCH200', 270.806, -929.962, 123.121, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -390, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8306, 135, 'mischiefplane', 0, 'BOOKREG200', 44.1068, -826.02, 119.062, 256, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 290, 390, 120, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8307, 136, 'mischiefplane', 0, 'ERPLANT3', 1443.14, 398.661, -9.96472, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -390, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8308, 137, 'mischiefplane', 0, 'BRISPORT200', 1901.65, -469.719, 0.108568, 58, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -127, 687, 175, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8309, 138, 'mischiefplane', 0, 'POMCHESS201', 681.312, 150.524, 179.245, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -960, 620, 125, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8310, 139, 'mischiefplane', 0, 'JNTREE104', 1465.13, -399.466, 270.658, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8311, 140, 'mischiefplane', 0, '0', 97.5, 215, 118, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 220.5, 97.5, 116.8, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8312, 141, 'mischiefplane', 0, 'DOOR2', 402.292, -386.971, 69.9768, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8313, 142, 'mischiefplane', 0, 'POMDOOR201', 453.456, -89.7571, 115.414, 256, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8314, 143, 'mischiefplane', 0, '0', 175, 142.5, 98.1, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 175, 142.5, 98.1, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8315, 144, 'mischiefplane', 0, '0', 89.3, 162.5, 116.8, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 162.5, 79, 116.8, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8316, 145, 'mischiefplane', 0, 'POMDOOR201', 495, -749.75, 115.47, 128, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8317, 146, 'mischiefplane', 0, 'POMDOOR201', 495.002, -754.911, 115.47, 129, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8318, 147, 'mischiefplane', 0, 'POMDOOR201', 54.9901, -943.455, 115.22, 128, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8319, 148, 'mischiefplane', 0, '0', 140, 257, 116.8, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 140, 257, 116.8, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8320, 149, 'mischiefplane', 0, 'POMDOOR201', 165.032, -544.538, 115.22, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8321, 150, 'mischiefplane', 0, '0', 145.5, 77, 116.8, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, 77, 155, 116.8, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8322, 151, 'mischiefplane', 0, 'POMDOOR201', 758.963, -1021.2, 119.832, 384, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'mischiefplane', 0, -930, 95, 120, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8991, 201, 'sseru', 0, 'SERUDOOR302', -15.9808, -757.201, 154.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8992, 200, 'sseru', 0, 'SERUDOOR302', -111.02, -757.215, 154.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8993, 173, 'sseru', 0, 'SERUDOOR302', -523.317, -232.025, 90.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8994, 172, 'sseru', 0, 'SERUDOOR302', -567.071, -156.991, 90.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8995, 171, 'sseru', 0, 'SERUDOOR302', -296.986, -283.013, 90.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8996, 170, 'sseru', 0, 'SERUDOOR302', -297.171, -185.012, 90.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8997, 166, 'sseru', 0, 'COMDOOR301', -267.957, -231.624, 56.002, 256, 57, 0, 0, 0, 0, 0, 0, 0, 0, 165, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8998, 161, 'sseru', 0, 'SERUDOOR302', -912.036, -542.11, 84.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (8999, 160, 'sseru', 0, 'SERUDOOR302', -864.005, -509.079, 96.002, 128.389, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9000, 159, 'sseru', 0, 'SERUDOOR302', -815.999, -541.981, 84.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9001, 158, 'sseru', 0, 'SERUDOOR302', -742.169, -615.992, 84.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9002, 157, 'sseru', 0, 'SERUDOOR302', -710.085, -663.999, 96.002, 0.111912, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9003, 156, 'sseru', 0, 'SERUDOOR302', -742.153, -711.976, 84.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9004, 147, 'sseru', 0, 'SERUDOOR302', -956.858, -552.955, 154.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9005, 146, 'sseru', 0, 'SERUDOOR302', -956.933, -648.03, 154.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9006, 145, 'sseru', 0, 'SERUDOOR302', -891.056, -690.999, 154.002, 65.9524, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9007, 144, 'sseru', 0, 'SERUDOOR302', -957.093, -757.066, 154.002, 64.6327, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9008, 143, 'sseru', 0, 'SERUDOOR302', -847.954, -756.849, 154.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9009, 142, 'sseru', 0, 'SERUDOOR302', -752.965, -757.148, 154.002, 127.755, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9010, 141, 'sseru', 0, 'SERUDOOR302', -431.994, -358.428, 190.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9011, 140, 'sseru', 0, 'SERUDOOR302', -305.977, -231.995, 190.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9012, 139, 'sseru', 0, 'SERUDOOR302', -558.09, -231.986, 190.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9013, 138, 'sseru', 0, 'SERUDOOR302', -431.961, -105.998, 190.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9014, 136, 'sseru', 0, 'SERUDOOR302', -956.795, 89.0354, 154.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9015, 135, 'sseru', 0, 'SERUDOOR302', -956.992, 184.017, 154.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9016, 134, 'sseru', 0, 'SERUDOOR302', -891.163, 227.155, 154.002, 448.503, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9017, 133, 'sseru', 0, 'SERUDOOR302', -957.148, 293.018, 154.002, 448.484, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9018, 132, 'sseru', 0, 'SERUDOOR302', -847.971, 292.823, 154.002, 128.065, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9019, 131, 'sseru', 0, 'SERUDOOR302', -752.927, 292.931, 154.002, 128.967, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9020, 130, 'sseru', 0, 'SERUDOOR302', -960.042, 121.251, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9021, 129, 'sseru', 0, 'SERUDOOR302', -833.175, 106.981, 119.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9022, 128, 'sseru', 0, 'SERUDOOR302', -770.992, 169.155, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9023, 127, 'sseru', 0, 'SERUDOOR302', -786.013, 296.006, 119.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9024, 126, 'sseru', 0, 'SERUDOOR302', -710.253, 200.022, 96.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9025, 125, 'sseru', 0, 'SERUDOOR302', -742.018, 247.98, 84.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9026, 124, 'sseru', 0, 'SERUDOOR302', -741.935, 152.004, 84.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9027, 123, 'sseru', 0, 'SERUDOOR302', -863.988, 45.1296, 96.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9028, 120, 'sseru', 0, 'SERUDOOR302', -760.06, 325.958, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9029, 119, 'sseru', 0, 'SERUDOOR302', -760.249, 261.986, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9030, 118, 'sseru', 0, 'SERUDOOR302', -770.95, 227.895, 55.992, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9031, 117, 'sseru', 0, 'SERUDOOR302', -812.193, 200.017, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9032, 116, 'sseru', 0, 'SERUDOOR302', -987.98, 95.9949, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9033, 115, 'sseru', 0, 'SERUDOOR302', -923.965, 96.2348, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9034, 114, 'sseru', 0, 'SERUDOOR302', -890.082, 107.059, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9035, 113, 'sseru', 0, 'SERUDOOR302', -862.018, 150.108, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9036, 102, 'sseru', 0, 'SERUDOOR302', 0.022436, 45.8475, 96.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9037, 101, 'sseru', 0, 'SERUDOOR302', -154.912, 199.937, 96.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9038, 96, 'sseru', 0, 'SERUDOOR302', -103.93, 259.994, 56.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9039, 95, 'sseru', 0, 'SERUDOOR302', -103.749, 324.049, 56.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9040, 94, 'sseru', 0, 'SERUDOOR302', -92.9568, 225.751, 56.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9041, 93, 'sseru', 0, 'SERUDOOR302', -49.9018, 198.029, 56.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9042, 92, 'sseru', 0, 'SERUDOOR302', 126.053, 95.8086, 56.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9043, 91, 'sseru', 0, 'SERUDOOR302', 61.9644, 96.2242, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9044, 90, 'sseru', 0, 'SERUDOOR302', 27.8566, 106.989, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9045, 89, 'sseru', 0, 'SERUDOOR302', 0.009796, 147.885, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9046, 86, 'sseru', 0, 'SERUDOOR302', 93.0613, -757.016, 154.002, 448.957, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9047, 85, 'sseru', 0, 'SERUDOOR302', 26.947, -690.899, 154.002, 448.879, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9048, 82, 'sseru', 0, 'SERUDOOR302', 61.9842, -560.087, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9049, 81, 'sseru', 0, 'SERUDOOR302', 126.025, -559.939, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9050, 80, 'sseru', 0, 'SERUDOOR302', -93.0699, -689.947, 56.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9051, 79, 'sseru', 0, 'SERUDOOR302', -103.883, -724.005, 56.002, 253.882, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9052, 78, 'sseru', 0, 'SERUDOOR302', -103.913, -788.008, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9053, 72, 'sseru', 0, 'SERUDOOR302', -155.042, -663.956, 96.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9054, 71, 'sseru', 0, 'SERUDOOR302', -122.038, -711.849, 83.902, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9055, 70, 'sseru', 0, 'SERUDOOR302', -122.004, -615.992, 83.902, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9056, 69, 'sseru', 0, 'SERUDOOR302', 0.082713, -509.908, 96.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9057, 68, 'sseru', 0, 'SERUDOOR302', -47.9142, -542.027, 84.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9058, 67, 'sseru', 0, 'SERUDOOR302', 47.9787, -541.984, 83.752, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9059, 47, 'sseru', 0, 'CRATEG', -1500.5, 105.226, -54.348, 1.21634, 53, 0, 0, 0, 0, 0, 0, 0, 1, 110, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9060, 45, 'sseru', 0, 'CRATEG', -1500.54, 271.021, -54.248, 0.898787, 53, 0, 0, 0, 0, 0, 0, 0, 1, 110, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9061, 46, 'sseru', 0, 'CRATEG', -1547.51, 270.872, -54.248, 256.497, 53, 0, 0, 0, 0, 0, 0, 0, 1, 110, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9062, 48, 'sseru', 0, 'CRATEG', -1547.49, 105.022, -54.348, 259.896, 53, 0, 0, 0, 0, 0, 0, 0, 1, 110, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9063, 73, 'sseru', 0, 'SERUDOOR302', 96.0841, -586.038, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9064, 74, 'sseru', 0, 'SERUDOOR302', -30.9845, -571.021, 119.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9065, 75, 'sseru', 0, 'SERUDOOR302', -93.0769, -633.045, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9066, 76, 'sseru', 0, 'SERUDOOR302', -78.8788, -759.968, 119.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9067, 77, 'sseru', 0, 'SERUDOOR302', -50.4212, -662.019, 56.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9068, 83, 'sseru', 0, 'SERUDOOR302', 27.9427, -571.011, 56.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9069, 84, 'sseru', 0, 'SERUDOOR302', -0.062209, -611.915, 56.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9070, 87, 'sseru', 0, 'SERUDOOR302', 92.9006, -553.001, 154.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9071, 88, 'sseru', 0, 'SERUDOOR302', 92.9937, -647.944, 154.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9072, 97, 'sseru', 0, 'SERUDOOR302', -122.113, 247.959, 84.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9073, 98, 'sseru', 0, 'SERUDOOR302', -122.123, 151.892, 84.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9074, 99, 'sseru', 0, 'SERUDOOR302', -47.9979, 78.125, 84.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9075, 100, 'sseru', 0, 'SERUDOOR302', 48.0357, 78.2125, 84.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9076, 103, 'sseru', 0, 'SERUDOOR302', -78.8239, 295.994, 119.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9077, 104, 'sseru', 0, 'SERUDOOR302', -92.9716, 169.007, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9078, 105, 'sseru', 0, 'SERUDOOR302', -30.7422, 107.042, 119.002, 256, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9079, 106, 'sseru', 0, 'SERUDOOR302', 96.0255, 122.229, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9080, 107, 'sseru', 0, 'SERUDOOR302', 27.1106, 227.109, 154.002, 319.56, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9081, 108, 'sseru', 0, 'SERUDOOR302', 93.1498, 293.131, 154.002, 320, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9082, 109, 'sseru', 0, 'SERUDOOR302', -16.1129, 292.901, 154.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9083, 110, 'sseru', 0, 'SERUDOOR302', -111.044, 292.788, 154.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9084, 111, 'sseru', 0, 'SERUDOOR302', 92.8211, 183.959, 154.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9085, 112, 'sseru', 0, 'SERUDOOR302', 92.9013, 89.0085, 154.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9086, 121, 'sseru', 0, 'SERUDOOR302', -911.996, 78.0958, 84.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9087, 122, 'sseru', 0, 'SERUDOOR302', -816.049, 77.947, 84.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9088, 148, 'sseru', 0, 'SERUDOOR302', -811.776, -664.009, 56.002, 256.139, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9089, 149, 'sseru', 0, 'SERUDOOR302', -770.962, -691.887, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9090, 150, 'sseru', 0, 'SERUDOOR302', -760.124, -725.947, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9091, 151, 'sseru', 0, 'SERUDOOR302', -760.244, -789.964, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9092, 152, 'sseru', 0, 'SERUDOOR302', -862.034, -614.384, 56.002, 128.335, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9093, 153, 'sseru', 0, 'SERUDOOR302', -890.186, -570.982, 56.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9094, 154, 'sseru', 0, 'SERUDOOR302', -924.007, -559.715, 56.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9095, 155, 'sseru', 0, 'SERUDOOR302', -988, -560.085, 56.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9096, 167, 'sseru', 0, 'SERUDOOR302', -373.001, -97.3237, 90.002, 128.833, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9097, 168, 'sseru', 0, 'SERUDOOR302', -567.044, -306.939, 90.002, 0.490723, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9098, 169, 'sseru', 0, 'SERUDOOR302', -373.029, -367.273, 90.002, 128, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9099, 174, 'sseru', 0, 'SERUDOOR302', -960.037, -584.608, 119.002, 384, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9100, 175, 'sseru', 0, 'SERUDOOR302', -833.213, -571.067, 119.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9101, 176, 'sseru', 0, 'SERUDOOR302', -770.976, -632.877, 119.002, 384.439, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9102, 177, 'sseru', 0, 'SERUDOOR302', -786.041, -759.979, 119.002, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 10, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9103, 178, 'sseru', 0, 'SERUJAIL301', -1724.05, 188.906, -72.098, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 16, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9104, 179, 'sseru', 0, 'SERUJAIL302', -1708.03, 265.331, -71.998, 128, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9105, 180, 'sseru', 0, 'SERUJAIL302', -1652.83, 265.765, -71.998, 384, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9106, 181, 'sseru', 0, 'SERUJAIL302', -1708.83, 107.926, -71.998, 384, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9107, 182, 'sseru', 0, 'SERUJAIL302', -1652.13, 108.189, -71.998, 128, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9108, 184, 'sseru', 0, 'SERUJAIL301', -1724.03, -647.33, -71.998, 256.885, 76, 0, 0, 0, 0, 0, 0, 0, 0, 16, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9109, 185, 'sseru', 0, 'SERUJAIL302', -1708.05, -567.967, -71.998, 129.092, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9110, 186, 'sseru', 0, 'SERUJAIL302', -1651.99, -567.816, -71.998, 128.411, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9111, 187, 'sseru', 0, 'SERUJAIL302', -1707.99, -725.943, -71.998, 384.31, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9112, 188, 'sseru', 0, 'SERUJAIL302', -1651.92, -726.063, -71.998, 384.769, 76, 0, 0, 0, 0, 0, 0, 0, 0, 9, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9113, 190, 'sseru', 0, 'MGLYPH301', 1029.25, -330.186, 64.002, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 'sseru', 0, -447, 1016, 225, 249, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9114, 189, 'sseru', 0, 'MGLYPH301', 1029.07, -132.984, 64.002, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 188, 'sseru', 0, -12, 1017, 225, 248, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9115, 193, 'sseru', 0, 'MGLYPH301', -145.971, 179.059, 121.502, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 192, 'sseru', 0, 64, 82, 157, 120, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9116, 192, 'sseru', 0, 'MGLYPH301', -21.0324, 54.0964, 121.502, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 191, 'sseru', 0, 281, -137, 157, 252, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9117, 195, 'sseru', 0, 'MGLYPH301', 81.8796, 53.3392, 156.502, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 194, 'sseru', 0, 179, -132, 122, 247, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9118, 194, 'sseru', 0, 'MGLYPH301', -148.124, 281.138, 156.252, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 193, 'sseru', 0, 65, -22, 122, 124, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9119, 197, 'sseru', 0, 'MGLYPH301', -20.8551, -517.956, 121.502, 256, 58, 0, 0, 0, 0, 0, 0, 0, 0, 196, 'sseru', 0, -526, 82, 157, 119, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9120, 196, 'sseru', 0, 'MGLYPH301', -145.812, -642.949, 121.517, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 195, 'sseru', 0, -743, -132, 157, 3, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9121, 198, 'sseru', 0, 'MGLYPH301', 82.0349, -516.532, 156.252, 256, 58, 0, 0, 0, 0, 0, 0, 0, 0, 197, 'sseru', 0, -533, -17, 122, 128, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9122, 199, 'sseru', 0, 'MGLYPH301', -147.752, -744.875, 156.502, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 198, 'sseru', 0, -642, -134, 122, 252, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9123, 203, 'sseru', 0, 'MGLYPH301', -843.229, 54.0784, 121.252, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 202, 'sseru', 0, 65, -947, 157, 132, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9124, 202, 'sseru', 0, 'MGLYPH301', -718.861, 178.99, 121.502, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 201, 'sseru', 0, 280, -730, 157, 3, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9125, 204, 'sseru', 0, 'MGLYPH301', -945.492, 52.1604, 156.502, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 203, 'sseru', 0, 66, -844, 122, 127, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9126, 205, 'sseru', 0, 'MGLYPH301', -717.612, 281.353, 156.686, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 204, 'sseru', 0, 179, -730, 122, 254, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9127, 207, 'sseru', 0, 'MGLYPH301', -718.314, -643.055, 121.502, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 206, 'sseru', 0, -745, -729, 158, 247, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9128, 206, 'sseru', 0, 'MGLYPH301', -843.04, -518.122, 121.452, 256, 58, 0, 0, 0, 0, 0, 0, 0, 0, 205, 'sseru', 0, -528, -944, 157, 122, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9129, 208, 'sseru', 0, 'MGLYPH301', -716.189, -745.05, 156.502, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 207, 'sseru', 0, -643, -730, 122, 247, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9130, 209, 'sseru', 0, 'MGLYPH301', -945.518, -517.086, 156.719, 256, 58, 0, 0, 0, 0, 0, 0, 0, 0, 208, 'sseru', 0, -531, -843, 122, 120, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9131, 214, 'sseru', 0, 'MGLYPH301', 1001.13, -448.291, 225.502, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 213, 'sseru', 0, -330, 966, 59.1, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9132, 213, 'sseru', 0, 'MGLYPH301', 1001.11, -13.1465, 225.562, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 212, 'sseru', 0, -133, 995, 59, 246, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9133, 212, 'sseru', 0, 'MGLYPH301', -281.973, -232.013, 192.752, 128, 58, 0, 0, 0, 0, 0, 0, 0, 0, 211, 'sseru', 0, 367, 1148, 59, 121, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9134, 211, 'sseru', 0, 'MGLYPH301', -581.038, -82.9619, 129.002, 0, 58, 0, 0, 0, 0, 0, 0, 0, 0, 210, 'sseru', 0, -92, -579, 193, 253, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9135, 210, 'sseru', 0, 'MGLYPH301', -580.881, -231.9, 93.1596, 384, 58, 0, 0, 0, 0, 0, 0, 0, 0, 209, 'sseru', 0, -372, -282, 130, 124, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9136, 217, 'sseru', 0, 'SERUJAIL302', -524.18, -286.177, 90.002, 254.136, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9137, 218, 'sseru', 0, 'SERUJAIL302', -524.75, -284.874, 100.002, 4.82398, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9138, 222, 'sseru', 0, 'MGLYPH301', -499.26, -287.825, 90.002, 208, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9139, 227, 'sseru', 0, 'MGLYPH301', -499.378, -287.808, 99.752, 461, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9140, 10, 'sseru', 0, 'SSERUPL404', -2046, -232, 2, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9141, 9, 'sseru', 0, 'SSERUPL400', -2044, 967, 56, 256, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9142, 8, 'sseru', 0, 'SSERUPL401', -1522.01, 1016, 52.5, 256, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9143, 7, 'sseru', 0, 'SSERUPL403', -424, 754, 56, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
|
REPLACE INTO `doors` (`id`, `doorid`, `zone`, `version`, `name`, `pos_y`, `pos_x`, `pos_z`, `heading`, `opentype`, `guild`, `lockpick`, `keyitem`, `nokeyring`, `triggerdoor`, `triggertype`, `disable_timer`, `doorisopen`, `door_param`, `dest_zone`, `dest_instance`, `dest_x`, `dest_y`, `dest_z`, `dest_heading`, `invert_state`, `incline`, `size`, `buffer`, `client_version_mask`, `is_ldon_door`, `dz_switch_id`, `min_expansion`, `max_expansion`, `content_flags`, `content_flags_disabled`) VALUES (9144, 4, 'sseru', 0, 'SSERUPL402', 560.038, -231.998, 52.006, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, -1, 'NONE', 0, 0, 0, 0, 0, 0, 0, 100, 0, 4294967295, 0, 0, -1, -1, NULL, NULL);
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
ALTER TABLE `npc_scale_global_base`
|
||||||
|
ADD COLUMN `zone_id` int(11) UNSIGNED NOT NULL DEFAULT 0 AFTER `level`,
|
||||||
|
ADD COLUMN `instance_version` int(11) UNSIGNED NOT NULL DEFAULT 0 AFTER `zone_id`,
|
||||||
|
DROP PRIMARY KEY,
|
||||||
|
ADD PRIMARY KEY (`type`, `level`, `zone_id`, `instance_version`) USING BTREE;
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
ALTER TABLE `npc_scale_global_base`
|
||||||
|
CHANGE COLUMN `zone_id` `zone_id_list` text CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 0 AFTER `level`,
|
||||||
|
CHANGE COLUMN `instance_version` `instance_version_list` text CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL DEFAULT 0 AFTER `zone_id_list`,
|
||||||
|
DROP PRIMARY KEY,
|
||||||
|
ADD PRIMARY KEY (`type`, `level`, `zone_id_list`(255), `instance_version_list`(255)) USING BTREE;
|
||||||
+2
-2
@@ -383,8 +383,8 @@ void Adventure::MoveCorpsesToGraveyard()
|
|||||||
if(!results.Success())
|
if(!results.Success())
|
||||||
|
|
||||||
for(auto row = results.begin(); row != results.end(); ++row) {
|
for(auto row = results.begin(); row != results.end(); ++row) {
|
||||||
dbid_list.push_back(atoi(row[0]));
|
dbid_list.push_back(Strings::ToInt(row[0]));
|
||||||
charid_list.push_back(atoi(row[1]));
|
charid_list.push_back(Strings::ToInt(row[1]));
|
||||||
}
|
}
|
||||||
|
|
||||||
for (auto &elem : dbid_list) {
|
for (auto &elem : dbid_list) {
|
||||||
|
|||||||
+52
-52
@@ -679,41 +679,41 @@ bool AdventureManager::LoadAdventureTemplates()
|
|||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
auto adventure_template = new AdventureTemplate;
|
auto adventure_template = new AdventureTemplate;
|
||||||
adventure_template->id = atoi(row[0]);
|
adventure_template->id = Strings::ToInt(row[0]);
|
||||||
strcpy(adventure_template->zone, row[1]);
|
strcpy(adventure_template->zone, row[1]);
|
||||||
|
|
||||||
adventure_template->zone_version = atoi(row[2]);
|
adventure_template->zone_version = Strings::ToInt(row[2]);
|
||||||
adventure_template->is_hard = atoi(row[3]);
|
adventure_template->is_hard = Strings::ToInt(row[3]);
|
||||||
adventure_template->min_level = atoi(row[4]);
|
adventure_template->min_level = Strings::ToInt(row[4]);
|
||||||
adventure_template->max_level = atoi(row[5]);
|
adventure_template->max_level = Strings::ToInt(row[5]);
|
||||||
adventure_template->type = atoi(row[6]);
|
adventure_template->type = Strings::ToInt(row[6]);
|
||||||
adventure_template->type_data = atoi(row[7]);
|
adventure_template->type_data = Strings::ToInt(row[7]);
|
||||||
adventure_template->type_count = atoi(row[8]);
|
adventure_template->type_count = Strings::ToInt(row[8]);
|
||||||
adventure_template->assa_x = atof(row[9]);
|
adventure_template->assa_x = Strings::ToFloat(row[9]);
|
||||||
adventure_template->assa_y = atof(row[10]);
|
adventure_template->assa_y = Strings::ToFloat(row[10]);
|
||||||
adventure_template->assa_z = atof(row[11]);
|
adventure_template->assa_z = Strings::ToFloat(row[11]);
|
||||||
adventure_template->assa_h = atof(row[12]);
|
adventure_template->assa_h = Strings::ToFloat(row[12]);
|
||||||
|
|
||||||
strn0cpy(adventure_template->text, row[13], sizeof(adventure_template->text));
|
strn0cpy(adventure_template->text, row[13], sizeof(adventure_template->text));
|
||||||
|
|
||||||
adventure_template->duration = atoi(row[14]);
|
adventure_template->duration = Strings::ToInt(row[14]);
|
||||||
adventure_template->zone_in_time = atoi(row[15]);
|
adventure_template->zone_in_time = Strings::ToInt(row[15]);
|
||||||
adventure_template->win_points = atoi(row[16]);
|
adventure_template->win_points = Strings::ToInt(row[16]);
|
||||||
adventure_template->lose_points = atoi(row[17]);
|
adventure_template->lose_points = Strings::ToInt(row[17]);
|
||||||
adventure_template->theme = atoi(row[18]);
|
adventure_template->theme = Strings::ToInt(row[18]);
|
||||||
adventure_template->zone_in_zone_id = atoi(row[19]);
|
adventure_template->zone_in_zone_id = Strings::ToInt(row[19]);
|
||||||
adventure_template->zone_in_x = atof(row[20]);
|
adventure_template->zone_in_x = Strings::ToFloat(row[20]);
|
||||||
adventure_template->zone_in_y = atof(row[21]);
|
adventure_template->zone_in_y = Strings::ToFloat(row[21]);
|
||||||
adventure_template->zone_in_object_id = atoi(row[22]);
|
adventure_template->zone_in_object_id = Strings::ToInt(row[22]);
|
||||||
adventure_template->dest_x = atof(row[23]);
|
adventure_template->dest_x = Strings::ToFloat(row[23]);
|
||||||
adventure_template->dest_y = atof(row[24]);
|
adventure_template->dest_y = Strings::ToFloat(row[24]);
|
||||||
adventure_template->dest_z = atof(row[25]);
|
adventure_template->dest_z = Strings::ToFloat(row[25]);
|
||||||
adventure_template->dest_h = atof(row[26]);
|
adventure_template->dest_h = Strings::ToFloat(row[26]);
|
||||||
adventure_template->graveyard_zone_id = atoi(row[27]);
|
adventure_template->graveyard_zone_id = Strings::ToInt(row[27]);
|
||||||
adventure_template->graveyard_x = atof(row[28]);
|
adventure_template->graveyard_x = Strings::ToFloat(row[28]);
|
||||||
adventure_template->graveyard_y = atof(row[29]);
|
adventure_template->graveyard_y = Strings::ToFloat(row[29]);
|
||||||
adventure_template->graveyard_z = atof(row[30]);
|
adventure_template->graveyard_z = Strings::ToFloat(row[30]);
|
||||||
adventure_template->graveyard_radius = atof(row[31]);
|
adventure_template->graveyard_radius = Strings::ToFloat(row[31]);
|
||||||
|
|
||||||
adventure_templates[adventure_template->id] = adventure_template;
|
adventure_templates[adventure_template->id] = adventure_template;
|
||||||
}
|
}
|
||||||
@@ -732,8 +732,8 @@ bool AdventureManager::LoadAdventureEntries()
|
|||||||
|
|
||||||
for (auto row = results.begin(); row != results.end(); ++row)
|
for (auto row = results.begin(); row != results.end(); ++row)
|
||||||
{
|
{
|
||||||
int id = atoi(row[0]);
|
int id = Strings::ToInt(row[0]);
|
||||||
int template_id = atoi(row[1]);
|
int template_id = Strings::ToInt(row[1]);
|
||||||
AdventureTemplate* tid = nullptr;
|
AdventureTemplate* tid = nullptr;
|
||||||
|
|
||||||
auto t_iter = adventure_templates.find(template_id);
|
auto t_iter = adventure_templates.find(template_id);
|
||||||
@@ -1108,26 +1108,26 @@ void AdventureManager::LoadLeaderboardInfo()
|
|||||||
|
|
||||||
LeaderboardInfo lbi;
|
LeaderboardInfo lbi;
|
||||||
lbi.name = row[0];
|
lbi.name = row[0];
|
||||||
lbi.wins = atoi(row[3]);
|
lbi.wins = Strings::ToInt(row[3]);
|
||||||
lbi.guk_wins = atoi(row[3]);
|
lbi.guk_wins = Strings::ToInt(row[3]);
|
||||||
lbi.wins += atoi(row[4]);
|
lbi.wins += Strings::ToInt(row[4]);
|
||||||
lbi.mir_wins = atoi(row[4]);
|
lbi.mir_wins = Strings::ToInt(row[4]);
|
||||||
lbi.wins += atoi(row[5]);
|
lbi.wins += Strings::ToInt(row[5]);
|
||||||
lbi.mmc_wins = atoi(row[5]);
|
lbi.mmc_wins = Strings::ToInt(row[5]);
|
||||||
lbi.wins += atoi(row[6]);
|
lbi.wins += Strings::ToInt(row[6]);
|
||||||
lbi.ruj_wins = atoi(row[6]);
|
lbi.ruj_wins = Strings::ToInt(row[6]);
|
||||||
lbi.wins += atoi(row[7]);
|
lbi.wins += Strings::ToInt(row[7]);
|
||||||
lbi.tak_wins = atoi(row[7]);
|
lbi.tak_wins = Strings::ToInt(row[7]);
|
||||||
lbi.losses = atoi(row[8]);
|
lbi.losses = Strings::ToInt(row[8]);
|
||||||
lbi.guk_losses = atoi(row[8]);
|
lbi.guk_losses = Strings::ToInt(row[8]);
|
||||||
lbi.losses += atoi(row[9]);
|
lbi.losses += Strings::ToInt(row[9]);
|
||||||
lbi.mir_losses = atoi(row[9]);
|
lbi.mir_losses = Strings::ToInt(row[9]);
|
||||||
lbi.losses += atoi(row[10]);
|
lbi.losses += Strings::ToInt(row[10]);
|
||||||
lbi.mmc_losses = atoi(row[10]);
|
lbi.mmc_losses = Strings::ToInt(row[10]);
|
||||||
lbi.losses += atoi(row[11]);
|
lbi.losses += Strings::ToInt(row[11]);
|
||||||
lbi.ruj_losses = atoi(row[11]);
|
lbi.ruj_losses = Strings::ToInt(row[11]);
|
||||||
lbi.losses += atoi(row[12]);
|
lbi.losses += Strings::ToInt(row[12]);
|
||||||
lbi.tak_losses = atoi(row[12]);
|
lbi.tak_losses = Strings::ToInt(row[12]);
|
||||||
|
|
||||||
leaderboard_info_wins.push_back(lbi);
|
leaderboard_info_wins.push_back(lbi);
|
||||||
leaderboard_info_percentage.push_back(lbi);
|
leaderboard_info_percentage.push_back(lbi);
|
||||||
|
|||||||
@@ -0,0 +1,73 @@
|
|||||||
|
#include <thread>
|
||||||
|
#include "../../common/repositories/zone_repository.h"
|
||||||
|
#include "../../common/eqemu_config.h"
|
||||||
|
#include <signal.h>
|
||||||
|
|
||||||
|
Database db;
|
||||||
|
Database db2;
|
||||||
|
|
||||||
|
volatile sig_atomic_t stop;
|
||||||
|
void inthand(int signum) {
|
||||||
|
stop = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
[[noreturn]] void DatabaseTest()
|
||||||
|
{
|
||||||
|
while (true) {
|
||||||
|
LogInfo("DatabaseTest Query");
|
||||||
|
db.QueryDatabase("SELECT 1");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[[noreturn]] void DatabaseTestSecondConnection()
|
||||||
|
{
|
||||||
|
while (true) {
|
||||||
|
LogInfo("DatabaseTest Query");
|
||||||
|
db2.QueryDatabase("SELECT 1");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void WorldserverCLI::TestDatabaseConcurrency(int argc, char **argv, argh::parser &cmd, std::string &description)
|
||||||
|
{
|
||||||
|
description = "Test command to test database concurrency";
|
||||||
|
|
||||||
|
if (cmd[{"-h", "--help"}]) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
signal(SIGINT, inthand);
|
||||||
|
|
||||||
|
LogInfo("Database test");
|
||||||
|
|
||||||
|
auto mutex = new Mutex;
|
||||||
|
|
||||||
|
auto c = EQEmuConfig::get();
|
||||||
|
LogInfo("Connecting to MySQL");
|
||||||
|
if (!db.Connect(
|
||||||
|
c->DatabaseHost.c_str(),
|
||||||
|
c->DatabaseUsername.c_str(),
|
||||||
|
c->DatabasePassword.c_str(),
|
||||||
|
c->DatabaseDB.c_str(),
|
||||||
|
c->DatabasePort
|
||||||
|
)) {
|
||||||
|
LogError("Cannot continue without a database connection");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
db.SetMutex(mutex);
|
||||||
|
|
||||||
|
db2.SetMySQL(db);
|
||||||
|
|
||||||
|
db2.SetMutex(mutex);
|
||||||
|
|
||||||
|
std::thread(DatabaseTest).detach();
|
||||||
|
std::thread(DatabaseTest).detach();
|
||||||
|
std::thread(DatabaseTestSecondConnection).detach();
|
||||||
|
|
||||||
|
while (!stop) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
safe_delete(mutex);
|
||||||
|
}
|
||||||
@@ -19,6 +19,6 @@ void WorldserverCLI::DatabaseSetAccountStatus(int argc, char **argv, argh::parse
|
|||||||
|
|
||||||
database.SetAccountStatus(
|
database.SetAccountStatus(
|
||||||
cmd(2).str(),
|
cmd(2).str(),
|
||||||
std::stoi(cmd(3).str())
|
Strings::ToInt(cmd(3).str())
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,114 @@
|
|||||||
|
#include <cereal/archives/json.hpp>
|
||||||
|
#include <cereal/types/vector.hpp>
|
||||||
|
#include "../../common/events/player_events.h"
|
||||||
|
#include "../../common/timer.h"
|
||||||
|
|
||||||
|
void WorldserverCLI::TestStringBenchmarkCommand(int argc, char **argv, argh::parser &cmd, std::string &description)
|
||||||
|
{
|
||||||
|
description = "Test command";
|
||||||
|
|
||||||
|
if (cmd[{"-h", "--help"}]) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Type {
|
||||||
|
StringsToInt = 0,
|
||||||
|
StringsToBigInt,
|
||||||
|
StringsToUnsignedInt,
|
||||||
|
StringsToUnsignedBigInt,
|
||||||
|
StringsToFloat,
|
||||||
|
StringsIsNumber,
|
||||||
|
StringsIsFloat,
|
||||||
|
StdStoi,
|
||||||
|
StdAtoi,
|
||||||
|
StdStoll,
|
||||||
|
StdAtoll,
|
||||||
|
StdStoul,
|
||||||
|
StdStoull,
|
||||||
|
StdStof,
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Benchmark {
|
||||||
|
std::string name;
|
||||||
|
Type type;
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<Benchmark> benches = {
|
||||||
|
Benchmark{.name = "Strings::ToInt", .type = StringsToInt},
|
||||||
|
Benchmark{.name = "std::stoi", .type = StdStoi},
|
||||||
|
Benchmark{.name = "std::atoi", .type = StdAtoi},
|
||||||
|
Benchmark{.name = "Strings::ToBigInt", .type = StringsToBigInt},
|
||||||
|
Benchmark{.name = "std::stoll", .type = StdStoll},
|
||||||
|
Benchmark{.name = "std::atoll", .type = StdAtoll},
|
||||||
|
Benchmark{.name = "Strings::ToUnsignedInt", .type = StringsToUnsignedInt},
|
||||||
|
Benchmark{.name = "std::stoul", .type = StdStoul},
|
||||||
|
Benchmark{.name = "Strings::ToUnsignedBigInt", .type = StringsToUnsignedBigInt},
|
||||||
|
Benchmark{.name = "std::stoull", .type = StdStoull},
|
||||||
|
Benchmark{.name = "Strings::ToFloat", .type = StringsToFloat},
|
||||||
|
Benchmark{.name = "std::stof", .type = StdStof},
|
||||||
|
Benchmark{.name = "Strings::IsNumber", .type = StringsIsNumber},
|
||||||
|
Benchmark{.name = "Strings::IsFloat", .type = StringsIsFloat},
|
||||||
|
};
|
||||||
|
|
||||||
|
BenchTimer benchmark;
|
||||||
|
|
||||||
|
for (auto &b: benches) {
|
||||||
|
int iterations = 10000000;
|
||||||
|
std::string number = "1111753784";
|
||||||
|
std::string float_number = "1111753784.2345623456345";
|
||||||
|
int64 convert = 0;
|
||||||
|
uint64_t uconvert = 0;
|
||||||
|
float fconvert = 0;
|
||||||
|
bool check = false;
|
||||||
|
|
||||||
|
for (int i = 0; i < iterations; i++) {
|
||||||
|
switch (b.type) {
|
||||||
|
case StringsToInt:
|
||||||
|
convert = Strings::ToInt(number, 0);
|
||||||
|
break;
|
||||||
|
case StdStoi:
|
||||||
|
convert = std::stoi(number);
|
||||||
|
break;
|
||||||
|
case StdAtoi:
|
||||||
|
convert = std::atoi(number.c_str());
|
||||||
|
break;
|
||||||
|
case StringsToBigInt:
|
||||||
|
convert = Strings::ToBigInt(number, 0);
|
||||||
|
break;
|
||||||
|
case StdStoll:
|
||||||
|
convert = std::stoll(number);
|
||||||
|
break;
|
||||||
|
case StdAtoll:
|
||||||
|
convert = std::atoll(number.c_str());
|
||||||
|
break;
|
||||||
|
case StringsToUnsignedInt:
|
||||||
|
uconvert = Strings::ToUnsignedInt(number, 0);
|
||||||
|
break;
|
||||||
|
case StringsToUnsignedBigInt:
|
||||||
|
uconvert = Strings::ToUnsignedBigInt(number, 0);
|
||||||
|
break;
|
||||||
|
case StringsToFloat:
|
||||||
|
fconvert = Strings::ToFloat(number, 0);
|
||||||
|
break;
|
||||||
|
case StringsIsNumber:
|
||||||
|
check = Strings::IsNumber(number);
|
||||||
|
break;
|
||||||
|
case StringsIsFloat:
|
||||||
|
check = Strings::IsFloat(float_number);
|
||||||
|
break;
|
||||||
|
case StdStoul:
|
||||||
|
uconvert = std::stoul(number);
|
||||||
|
break;
|
||||||
|
case StdStoull:
|
||||||
|
uconvert = std::stoull(number);
|
||||||
|
break;
|
||||||
|
case StdStof:
|
||||||
|
fconvert = std::stof(number);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
LogInfo("{:<30} | [{}] time [{}]", b.name, Strings::Commify(iterations), benchmark.elapsed());
|
||||||
|
benchmark.reset();
|
||||||
|
}
|
||||||
|
}
|
||||||
+6
-6
@@ -453,7 +453,7 @@ bool Client::HandleSendLoginInfoPacket(const EQApplicationPacket *app)
|
|||||||
|
|
||||||
is_player_zoning = (login_info->zoning == 1);
|
is_player_zoning = (login_info->zoning == 1);
|
||||||
|
|
||||||
uint32 id = std::stoi(name);
|
uint32 id = Strings::ToInt(name);
|
||||||
if (id == 0) {
|
if (id == 0) {
|
||||||
LogWarning("Receiving Login Info Packet from Client | account_id is 0 - disconnecting");
|
LogWarning("Receiving Login Info Packet from Client | account_id is 0 - disconnecting");
|
||||||
return false;
|
return false;
|
||||||
@@ -808,7 +808,7 @@ bool Client::HandleEnterWorldPacket(const EQApplicationPacket *app) {
|
|||||||
if (!strcasecmp(row[1], char_name)) {
|
if (!strcasecmp(row[1], char_name)) {
|
||||||
if (RuleB(World, EnableReturnHomeButton)) {
|
if (RuleB(World, EnableReturnHomeButton)) {
|
||||||
int now = time(nullptr);
|
int now = time(nullptr);
|
||||||
if ((now - atoi(row[3])) >= RuleI(World, MinOfflineTimeToReturnHome)) {
|
if ((now - Strings::ToInt(row[3])) >= RuleI(World, MinOfflineTimeToReturnHome)) {
|
||||||
home_enabled = true;
|
home_enabled = true;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -834,7 +834,7 @@ bool Client::HandleEnterWorldPacket(const EQApplicationPacket *app) {
|
|||||||
if (!strcasecmp(row[1], char_name)) {
|
if (!strcasecmp(row[1], char_name)) {
|
||||||
if (
|
if (
|
||||||
RuleB(World, EnableTutorialButton) &&
|
RuleB(World, EnableTutorialButton) &&
|
||||||
std::stoi(row[2]) <= RuleI(World, MaxLevelForTutorial)
|
Strings::ToInt(row[2]) <= RuleI(World, MaxLevelForTutorial)
|
||||||
) {
|
) {
|
||||||
tutorial_enabled = true;
|
tutorial_enabled = true;
|
||||||
break;
|
break;
|
||||||
@@ -1258,7 +1258,7 @@ bool Client::ChecksumVerificationCRCEQGame(uint64 checksum)
|
|||||||
std::string checksumvar;
|
std::string checksumvar;
|
||||||
uint64_t checksumint;
|
uint64_t checksumint;
|
||||||
if (database.GetVariable("crc_eqgame", checksumvar)) {
|
if (database.GetVariable("crc_eqgame", checksumvar)) {
|
||||||
checksumint = atoll(checksumvar.c_str());
|
checksumint = Strings::ToBigInt(checksumvar.c_str());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
LogChecksumVerification("variable not set in variables table.");
|
LogChecksumVerification("variable not set in variables table.");
|
||||||
@@ -1281,7 +1281,7 @@ bool Client::ChecksumVerificationCRCSkillCaps(uint64 checksum)
|
|||||||
std::string checksumvar;
|
std::string checksumvar;
|
||||||
uint64_t checksumint;
|
uint64_t checksumint;
|
||||||
if (database.GetVariable("crc_skillcaps", checksumvar)) {
|
if (database.GetVariable("crc_skillcaps", checksumvar)) {
|
||||||
checksumint = atoll(checksumvar.c_str());
|
checksumint = Strings::ToBigInt(checksumvar.c_str());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
LogChecksumVerification("[checksum_crc2_skillcaps] variable not set in variables table.");
|
LogChecksumVerification("[checksum_crc2_skillcaps] variable not set in variables table.");
|
||||||
@@ -1304,7 +1304,7 @@ bool Client::ChecksumVerificationCRCBaseData(uint64 checksum)
|
|||||||
std::string checksumvar;
|
std::string checksumvar;
|
||||||
uint64_t checksumint;
|
uint64_t checksumint;
|
||||||
if (database.GetVariable("crc_basedata", checksumvar)) {
|
if (database.GetVariable("crc_basedata", checksumvar)) {
|
||||||
checksumint = atoll(checksumvar.c_str());
|
checksumint = Strings::ToBigInt(checksumvar.c_str());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
LogChecksumVerification("variable not set in variables table.");
|
LogChecksumVerification("variable not set in variables table.");
|
||||||
|
|||||||
@@ -365,7 +365,7 @@ bool ClientListEntry::CheckAuth(uint32 loginserver_account_id, const char *key_p
|
|||||||
}
|
}
|
||||||
std::string lsworldadmin;
|
std::string lsworldadmin;
|
||||||
if (database.GetVariable("honorlsworldadmin", lsworldadmin)) {
|
if (database.GetVariable("honorlsworldadmin", lsworldadmin)) {
|
||||||
if (atoi(lsworldadmin.c_str()) == 1 && pworldadmin != 0 && (padmin < pworldadmin || padmin == AccountStatus::Player)) {
|
if (Strings::ToInt(lsworldadmin.c_str()) == 1 && pworldadmin != 0 && (padmin < pworldadmin || padmin == AccountStatus::Player)) {
|
||||||
padmin = pworldadmin;
|
padmin = pworldadmin;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+19
-19
@@ -166,14 +166,14 @@ void ConsoleWho(
|
|||||||
}
|
}
|
||||||
else if (Strings::IsNumber(arg)) {
|
else if (Strings::IsNumber(arg)) {
|
||||||
if (whom.lvllow == 0xFFFF) {
|
if (whom.lvllow == 0xFFFF) {
|
||||||
whom.lvllow = atoi(arg.c_str());
|
whom.lvllow = Strings::ToInt(arg.c_str());
|
||||||
whom.lvlhigh = whom.lvllow;
|
whom.lvlhigh = whom.lvllow;
|
||||||
}
|
}
|
||||||
else if (atoi(arg.c_str()) > int(whom.lvllow)) {
|
else if (Strings::ToInt(arg.c_str()) > int(whom.lvllow)) {
|
||||||
whom.lvlhigh = atoi(arg.c_str());
|
whom.lvlhigh = Strings::ToInt(arg.c_str());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
whom.lvllow = atoi(arg.c_str());
|
whom.lvllow = Strings::ToInt(arg.c_str());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -200,11 +200,11 @@ void ConsoleUptime(
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Strings::IsNumber(args[0]) && atoi(args[0].c_str()) > 0) {
|
if (Strings::IsNumber(args[0]) && Strings::ToInt(args[0].c_str()) > 0) {
|
||||||
auto pack = new ServerPacket(ServerOP_Uptime, sizeof(ServerUptime_Struct));
|
auto pack = new ServerPacket(ServerOP_Uptime, sizeof(ServerUptime_Struct));
|
||||||
ServerUptime_Struct *sus = (ServerUptime_Struct *) pack->pBuffer;
|
ServerUptime_Struct *sus = (ServerUptime_Struct *) pack->pBuffer;
|
||||||
snprintf(sus->adminname, sizeof(sus->adminname), "*%s", connection->UserName().c_str());
|
snprintf(sus->adminname, sizeof(sus->adminname), "*%s", connection->UserName().c_str());
|
||||||
sus->zoneserverid = atoi(args[0].c_str());
|
sus->zoneserverid = Strings::ToInt(args[0].c_str());
|
||||||
ZoneServer *zs = zoneserver_list.FindByID(sus->zoneserverid);
|
ZoneServer *zs = zoneserver_list.FindByID(sus->zoneserverid);
|
||||||
if (zs) {
|
if (zs) {
|
||||||
zs->SendPacket(pack);
|
zs->SendPacket(pack);
|
||||||
@@ -284,7 +284,7 @@ void ConsoleEmote(
|
|||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
AccountStatus::Player,
|
AccountStatus::Player,
|
||||||
atoi(args[1].c_str()),
|
Strings::ToInt(args[1].c_str()),
|
||||||
Strings::Join(join_args, " ").c_str()
|
Strings::Join(join_args, " ").c_str()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -295,7 +295,7 @@ void ConsoleEmote(
|
|||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
AccountStatus::Player,
|
AccountStatus::Player,
|
||||||
atoi(args[1].c_str()),
|
Strings::ToInt(args[1].c_str()),
|
||||||
Strings::Join(join_args, " ").c_str()
|
Strings::Join(join_args, " ").c_str()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -304,7 +304,7 @@ void ConsoleEmote(
|
|||||||
args[0].c_str(),
|
args[0].c_str(),
|
||||||
0,
|
0,
|
||||||
AccountStatus::Player,
|
AccountStatus::Player,
|
||||||
atoi(args[1].c_str()),
|
Strings::ToInt(args[1].c_str()),
|
||||||
Strings::Join(join_args, " ").c_str()
|
Strings::Join(join_args, " ").c_str()
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -422,7 +422,7 @@ void ConsoleGuildSay(
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto from = args[0];
|
auto from = args[0];
|
||||||
auto guild_id = Strings::IsNumber(args[1]) ? std::stoul(args[1]) : 0;
|
auto guild_id = Strings::IsNumber(args[1]) ? Strings::ToUnsignedInt(args[1]) : 0;
|
||||||
if (!guild_id) {
|
if (!guild_id) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -585,7 +585,7 @@ void ConsoleZoneShutdown(
|
|||||||
pack->opcode = ServerOP_ZoneShutdown;
|
pack->opcode = ServerOP_ZoneShutdown;
|
||||||
strcpy(s->adminname, tmpname);
|
strcpy(s->adminname, tmpname);
|
||||||
if (Strings::IsNumber(args[0])) {
|
if (Strings::IsNumber(args[0])) {
|
||||||
s->ZoneServerID = atoi(args[0].c_str());
|
s->ZoneServerID = Strings::ToInt(args[0].c_str());
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
s->zoneid = ZoneID(args[0].c_str());
|
s->zoneid = ZoneID(args[0].c_str());
|
||||||
@@ -639,12 +639,12 @@ void ConsoleZoneBootup(
|
|||||||
if (args.size() > 2) {
|
if (args.size() > 2) {
|
||||||
zoneserver_list.SOPZoneBootup(
|
zoneserver_list.SOPZoneBootup(
|
||||||
tmpname,
|
tmpname,
|
||||||
atoi(args[0].c_str()),
|
Strings::ToInt(args[0].c_str()),
|
||||||
args[1].c_str(),
|
args[1].c_str(),
|
||||||
(bool) (strcasecmp(args[1].c_str(), "static") == 0));
|
(bool) (strcasecmp(args[1].c_str(), "static") == 0));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
zoneserver_list.SOPZoneBootup(tmpname, atoi(args[0].c_str()), args[1].c_str(), false);
|
zoneserver_list.SOPZoneBootup(tmpname, Strings::ToInt(args[0].c_str()), args[1].c_str(), false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -751,10 +751,10 @@ void ConsoleFlag(
|
|||||||
connection->SendLine("Usage: flag [status] [accountname]");
|
connection->SendLine("Usage: flag [status] [accountname]");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (atoi(args[0].c_str()) > connection->Admin()) {
|
if (Strings::ToInt(args[0].c_str()) > connection->Admin()) {
|
||||||
connection->SendLine("You cannot set people's status to higher than your own");
|
connection->SendLine("You cannot set people's status to higher than your own");
|
||||||
}
|
}
|
||||||
else if (!database.SetAccountStatus(args[1].c_str(), atoi(args[0].c_str()))) {
|
else if (!database.SetAccountStatus(args[1].c_str(), Strings::ToInt(args[0].c_str()))) {
|
||||||
connection->SendLine("Unable to flag account!");
|
connection->SendLine("Unable to flag account!");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -821,8 +821,8 @@ void ConsoleWorldShutdown(
|
|||||||
{
|
{
|
||||||
if (args.size() == 2) {
|
if (args.size() == 2) {
|
||||||
int32 time, interval;
|
int32 time, interval;
|
||||||
if (Strings::IsNumber(args[0]) && Strings::IsNumber(args[1]) && ((time = atoi(args[0].c_str())) > 0) &&
|
if (Strings::IsNumber(args[0]) && Strings::IsNumber(args[1]) && ((time = Strings::ToInt(args[0].c_str())) > 0) &&
|
||||||
((interval = atoi(args[1].c_str())) > 0)) {
|
((interval = Strings::ToInt(args[1].c_str())) > 0)) {
|
||||||
zoneserver_list.WorldShutDown(time, interval);
|
zoneserver_list.WorldShutDown(time, interval);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -886,7 +886,7 @@ void ConsoleSignalCharByName(
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
connection->SendLine(StringFormat("Signal Sent to %s with ID %i", (char *) args[0].c_str(), atoi(args[1].c_str())));
|
connection->SendLine(StringFormat("Signal Sent to %s with ID %i", (char *) args[0].c_str(), Strings::ToInt(args[1].c_str())));
|
||||||
uint32 message_len = strlen((char *) args[0].c_str()) + 1;
|
uint32 message_len = strlen((char *) args[0].c_str()) + 1;
|
||||||
auto pack = new ServerPacket(ServerOP_CZSignal, sizeof(CZSignal_Struct) + message_len);
|
auto pack = new ServerPacket(ServerOP_CZSignal, sizeof(CZSignal_Struct) + message_len);
|
||||||
CZSignal_Struct* CZS = (CZSignal_Struct*) pack->pBuffer;
|
CZSignal_Struct* CZS = (CZSignal_Struct*) pack->pBuffer;
|
||||||
@@ -894,7 +894,7 @@ void ConsoleSignalCharByName(
|
|||||||
int update_identifier = 0;
|
int update_identifier = 0;
|
||||||
CZS->update_type = update_type;
|
CZS->update_type = update_type;
|
||||||
CZS->update_identifier = update_identifier;
|
CZS->update_identifier = update_identifier;
|
||||||
CZS->signal_id = atoi(args[1].c_str());
|
CZS->signal_id = Strings::ToInt(args[1].c_str());
|
||||||
strn0cpy(CZS->client_name, (char *) args[0].c_str(), 64);
|
strn0cpy(CZS->client_name, (char *) args[0].c_str(), 64);
|
||||||
zoneserver_list.SendPacket(pack);
|
zoneserver_list.SendPacket(pack);
|
||||||
safe_delete(pack);
|
safe_delete(pack);
|
||||||
|
|||||||
+17
-17
@@ -494,13 +494,13 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
// do nothing
|
// do nothing
|
||||||
}
|
}
|
||||||
else if (strcasecmp(sep.arg[0], "signalcharbyname") == 0) {
|
else if (strcasecmp(sep.arg[0], "signalcharbyname") == 0) {
|
||||||
SendMessage(1, "Signal Sent to %s with ID %i", (char*) sep.arg[1], atoi(sep.arg[2]));
|
SendMessage(1, "Signal Sent to %s with ID %i", (char*) sep.arg[1], Strings::ToInt(sep.arg[2]));
|
||||||
uint32 message_len = strlen((char*) sep.arg[1]) + 1;
|
uint32 message_len = strlen((char*) sep.arg[1]) + 1;
|
||||||
auto pack = new ServerPacket(ServerOP_CZSignalClientByName,
|
auto pack = new ServerPacket(ServerOP_CZSignalClientByName,
|
||||||
sizeof(CZClientSignalByName_Struct) + message_len);
|
sizeof(CZClientSignalByName_Struct) + message_len);
|
||||||
CZClientSignalByName_Struct* CZSC = (CZClientSignalByName_Struct*) pack->pBuffer;
|
CZClientSignalByName_Struct* CZSC = (CZClientSignalByName_Struct*) pack->pBuffer;
|
||||||
strn0cpy(CZSC->Name, (char*) sep.arg[1], 64);
|
strn0cpy(CZSC->Name, (char*) sep.arg[1], 64);
|
||||||
CZSC->data = atoi(sep.arg[2]);
|
CZSC->data = Strings::ToInt(sep.arg[2]);
|
||||||
zoneserver_list.SendPacket(pack);
|
zoneserver_list.SendPacket(pack);
|
||||||
safe_delete(pack);
|
safe_delete(pack);
|
||||||
}
|
}
|
||||||
@@ -522,11 +522,11 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (strcasecmp(sep.arg[0], "uptime") == 0) {
|
else if (strcasecmp(sep.arg[0], "uptime") == 0) {
|
||||||
if (sep.IsNumber(1) && atoi(sep.arg[1]) > 0) {
|
if (sep.IsNumber(1) && Strings::ToInt(sep.arg[1]) > 0) {
|
||||||
auto pack = new ServerPacket(ServerOP_Uptime, sizeof(ServerUptime_Struct));
|
auto pack = new ServerPacket(ServerOP_Uptime, sizeof(ServerUptime_Struct));
|
||||||
ServerUptime_Struct* sus = (ServerUptime_Struct*) pack->pBuffer;
|
ServerUptime_Struct* sus = (ServerUptime_Struct*) pack->pBuffer;
|
||||||
snprintf(sus->adminname, sizeof(sus->adminname), "*%s", GetName());
|
snprintf(sus->adminname, sizeof(sus->adminname), "*%s", GetName());
|
||||||
sus->zoneserverid = atoi(sep.arg[1]);
|
sus->zoneserverid = Strings::ToInt(sep.arg[1]);
|
||||||
ZoneServer* zs = zoneserver_list.FindByID(sus->zoneserverid);
|
ZoneServer* zs = zoneserver_list.FindByID(sus->zoneserverid);
|
||||||
if (zs)
|
if (zs)
|
||||||
zs->SendPacket(pack);
|
zs->SendPacket(pack);
|
||||||
@@ -603,13 +603,13 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
}
|
}
|
||||||
else if (strcasecmp(sep.arg[0], "emote") == 0) {
|
else if (strcasecmp(sep.arg[0], "emote") == 0) {
|
||||||
if (strcasecmp(sep.arg[1], "world") == 0)
|
if (strcasecmp(sep.arg[1], "world") == 0)
|
||||||
zoneserver_list.SendEmoteMessageRaw(0, 0, 0, atoi(sep.arg[2]), sep.argplus[3]);
|
zoneserver_list.SendEmoteMessageRaw(0, 0, 0, Strings::ToInt(sep.arg[2]), sep.argplus[3]);
|
||||||
else {
|
else {
|
||||||
ZoneServer* zs = zoneserver_list.FindByName(sep.arg[1]);
|
ZoneServer* zs = zoneserver_list.FindByName(sep.arg[1]);
|
||||||
if (zs != 0)
|
if (zs != 0)
|
||||||
zs->SendEmoteMessageRaw(0, 0, 0, atoi(sep.arg[2]), sep.argplus[3]);
|
zs->SendEmoteMessageRaw(0, 0, 0, Strings::ToInt(sep.arg[2]), sep.argplus[3]);
|
||||||
else
|
else
|
||||||
zoneserver_list.SendEmoteMessageRaw(sep.arg[1], 0, 0, atoi(sep.arg[2]), sep.argplus[3]);
|
zoneserver_list.SendEmoteMessageRaw(sep.arg[1], 0, 0, Strings::ToInt(sep.arg[2]), sep.argplus[3]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (strcasecmp(sep.arg[0], "movechar") == 0) {
|
else if (strcasecmp(sep.arg[0], "movechar") == 0) {
|
||||||
@@ -634,11 +634,11 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
SendMessage(1, "Usage: flag [status] [accountname]");
|
SendMessage(1, "Usage: flag [status] [accountname]");
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (atoi(sep.arg[1]) > Admin())
|
if (Strings::ToInt(sep.arg[1]) > Admin())
|
||||||
SendMessage(1, "You cannot set people's status to higher than your own");
|
SendMessage(1, "You cannot set people's status to higher than your own");
|
||||||
else if (atoi(sep.arg[1]) < 0 && Admin() < consoleFlagStatus)
|
else if (Strings::ToInt(sep.arg[1]) < 0 && Admin() < consoleFlagStatus)
|
||||||
SendMessage(1, "You have too low of status to change flags");
|
SendMessage(1, "You have too low of status to change flags");
|
||||||
else if (!database.SetAccountStatus(sep.arg[2], atoi(sep.arg[1])))
|
else if (!database.SetAccountStatus(sep.arg[2], Strings::ToInt(sep.arg[1])))
|
||||||
SendMessage(1, "Unable to flag account!");
|
SendMessage(1, "Unable to flag account!");
|
||||||
else
|
else
|
||||||
SendMessage(1, "Account Flaged");
|
SendMessage(1, "Account Flaged");
|
||||||
@@ -672,13 +672,13 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
whom->gmlookup = 1;
|
whom->gmlookup = 1;
|
||||||
else if (sep.IsNumber(i)) {
|
else if (sep.IsNumber(i)) {
|
||||||
if (whom->lvllow == 0xFFFF) {
|
if (whom->lvllow == 0xFFFF) {
|
||||||
whom->lvllow = atoi(sep.arg[i]);
|
whom->lvllow = Strings::ToInt(sep.arg[i]);
|
||||||
whom->lvlhigh = whom->lvllow;
|
whom->lvlhigh = whom->lvllow;
|
||||||
}
|
}
|
||||||
else if (atoi(sep.arg[i]) > int(whom->lvllow))
|
else if (Strings::ToInt(sep.arg[i]) > int(whom->lvllow))
|
||||||
whom->lvlhigh = atoi(sep.arg[i]);
|
whom->lvlhigh = Strings::ToInt(sep.arg[i]);
|
||||||
else
|
else
|
||||||
whom->lvllow = atoi(sep.arg[i]);
|
whom->lvllow = Strings::ToInt(sep.arg[i]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
strn0cpy(whom->whom, sep.arg[i], sizeof(whom->whom));
|
strn0cpy(whom->whom, sep.arg[i], sizeof(whom->whom));
|
||||||
@@ -709,7 +709,7 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
pack->opcode = ServerOP_ZoneShutdown;
|
pack->opcode = ServerOP_ZoneShutdown;
|
||||||
strcpy(s->adminname, tmpname);
|
strcpy(s->adminname, tmpname);
|
||||||
if (sep.arg[1][0] >= '0' && sep.arg[1][0] <= '9')
|
if (sep.arg[1][0] >= '0' && sep.arg[1][0] <= '9')
|
||||||
s->ZoneServerID = atoi(sep.arg[1]);
|
s->ZoneServerID = Strings::ToInt(sep.arg[1]);
|
||||||
else
|
else
|
||||||
s->zoneid = ZoneID(sep.arg[1]);
|
s->zoneid = ZoneID(sep.arg[1]);
|
||||||
|
|
||||||
@@ -738,12 +738,12 @@ void Console::ProcessCommand(const char* command) {
|
|||||||
strcpy(&tmpname[1], paccountname);
|
strcpy(&tmpname[1], paccountname);
|
||||||
|
|
||||||
LogInfo("Console ZoneBootup: [{}], [{}], [{}]",tmpname,sep.arg[2],sep.arg[1]);
|
LogInfo("Console ZoneBootup: [{}], [{}], [{}]",tmpname,sep.arg[2],sep.arg[1]);
|
||||||
zoneserver_list.SOPZoneBootup(tmpname, atoi(sep.arg[1]), sep.arg[2], (bool) (strcasecmp(sep.arg[3], "static") == 0));
|
zoneserver_list.SOPZoneBootup(tmpname, Strings::ToInt(sep.arg[1]), sep.arg[2], (bool) (strcasecmp(sep.arg[3], "static") == 0));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (strcasecmp(sep.arg[0], "worldshutdown") == 0 && admin >= consoleWorldStatus) {
|
else if (strcasecmp(sep.arg[0], "worldshutdown") == 0 && admin >= consoleWorldStatus) {
|
||||||
int32 time, interval;
|
int32 time, interval;
|
||||||
if(sep.IsNumber(1) && sep.IsNumber(2) && ((time=atoi(sep.arg[1]))>0) && ((interval=atoi(sep.arg[2]))>0)) {
|
if(sep.IsNumber(1) && sep.IsNumber(2) && ((time=Strings::ToInt(sep.arg[1]))>0) && ((interval=Strings::ToInt(sep.arg[2]))>0)) {
|
||||||
zoneserver_list.WorldShutDown(time, interval);
|
zoneserver_list.WorldShutDown(time, interval);
|
||||||
}
|
}
|
||||||
else if(strcasecmp(sep.arg[1], "now") == 0) {
|
else if(strcasecmp(sep.arg[1], "now") == 0) {
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ void EQEmuApiWorldDataService::reload(Json::Value &r, const std::vector<std::str
|
|||||||
uint8 global_repop = ReloadWorld::NoRepop;
|
uint8 global_repop = ReloadWorld::NoRepop;
|
||||||
|
|
||||||
if (Strings::IsNumber(args[2])) {
|
if (Strings::IsNumber(args[2])) {
|
||||||
global_repop = static_cast<uint8>(std::stoul(args[2]));
|
global_repop = static_cast<uint8>(Strings::ToUnsignedInt(args[2]));
|
||||||
|
|
||||||
if (global_repop > ReloadWorld::ForceRepop) {
|
if (global_repop > ReloadWorld::ForceRepop) {
|
||||||
global_repop = ReloadWorld::ForceRepop;
|
global_repop = ReloadWorld::ForceRepop;
|
||||||
@@ -224,6 +224,13 @@ void EQEmuApiWorldDataService::reload(Json::Value &r, const std::vector<std::str
|
|||||||
else {
|
else {
|
||||||
pack = new ServerPacket(c.opcode, 0);
|
pack = new ServerPacket(c.opcode, 0);
|
||||||
message(r, fmt::format("Reloading [{}] globally", c.desc));
|
message(r, fmt::format("Reloading [{}] globally", c.desc));
|
||||||
|
|
||||||
|
if (c.opcode == ServerOP_ReloadLogs) {
|
||||||
|
LogSys.LoadLogDatabaseSettings();
|
||||||
|
}
|
||||||
|
else if (c.opcode == ServerOP_ReloadRules) {
|
||||||
|
RuleManager::Instance()->LoadRules(&database, RuleManager::Instance()->GetActiveRuleset(), true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
found_command = true;
|
found_command = true;
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ void EQLConfig::LoadSettings() {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
m_dynamics = atoi(row[0]);
|
m_dynamics = Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
query = StringFormat("SELECT zone, port FROM launcher_zones WHERE launcher = '%s'", namebuf);
|
query = StringFormat("SELECT zone, port FROM launcher_zones WHERE launcher = '%s'", namebuf);
|
||||||
@@ -60,7 +60,7 @@ void EQLConfig::LoadSettings() {
|
|||||||
LauncherZone zs;
|
LauncherZone zs;
|
||||||
for (auto row = results.begin(); row != results.end(); ++row) {
|
for (auto row = results.begin(); row != results.end(); ++row) {
|
||||||
zs.name = row[0];
|
zs.name = row[0];
|
||||||
zs.port = atoi(row[1]);
|
zs.port = Strings::ToInt(row[1]);
|
||||||
m_zones[zs.name] = zs;
|
m_zones[zs.name] = zs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -131,7 +131,7 @@ std::vector<std::string> EQW::ListBootedZones() {
|
|||||||
std::map<std::string,std::string> EQW::GetZoneDetails(Const_char *zone_ref) {
|
std::map<std::string,std::string> EQW::GetZoneDetails(Const_char *zone_ref) {
|
||||||
std::map<std::string,std::string> res;
|
std::map<std::string,std::string> res;
|
||||||
|
|
||||||
ZoneServer *zs = zoneserver_list.FindByID(atoi(zone_ref));
|
ZoneServer *zs = zoneserver_list.FindByID(Strings::ToInt(zone_ref));
|
||||||
if(zs == nullptr) {
|
if(zs == nullptr) {
|
||||||
res["error"] = "Invalid zone.";
|
res["error"] = "Invalid zone.";
|
||||||
return(res);
|
return(res);
|
||||||
@@ -316,7 +316,7 @@ int EQW::CountBugs() {
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
auto row = results.begin();
|
auto row = results.begin();
|
||||||
return atoi(row[0]);
|
return Strings::ToInt(row[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<std::string> EQW::ListBugs(uint32 offset) {
|
std::vector<std::string> EQW::ListBugs(uint32 offset) {
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ int HTTPRequest::getInt(const char *name, int default_value) const {
|
|||||||
res = m_values.find(name);
|
res = m_values.find(name);
|
||||||
if(res == m_values.end())
|
if(res == m_values.end())
|
||||||
return(default_value);
|
return(default_value);
|
||||||
return(atoi(res->second.c_str()));
|
return(Strings::ToInt(res->second.c_str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
float HTTPRequest::getFloat(const char *name, float default_value) const {
|
float HTTPRequest::getFloat(const char *name, float default_value) const {
|
||||||
@@ -62,7 +62,7 @@ float HTTPRequest::getFloat(const char *name, float default_value) const {
|
|||||||
res = m_values.find(name);
|
res = m_values.find(name);
|
||||||
if(res == m_values.end())
|
if(res == m_values.end())
|
||||||
return(default_value);
|
return(default_value);
|
||||||
return(atof(res->second.c_str()));
|
return(Strings::ToFloat(res->second.c_str()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void HTTPRequest::header(Const_char *name, Const_char *value) {
|
void HTTPRequest::header(Const_char *name, Const_char *value) {
|
||||||
|
|||||||
+7
-11
@@ -131,12 +131,6 @@ inline void UpdateWindowTitle(std::string new_title)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void PlayerEventQueueListener() {
|
|
||||||
while (RunLoops) {
|
|
||||||
player_event_logs.Process();
|
|
||||||
Sleep(1000);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* World process entrypoint
|
* World process entrypoint
|
||||||
@@ -381,13 +375,9 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Timer player_event_process_timer(1000);
|
||||||
player_event_logs.SetDatabase(&database)->Init();
|
player_event_logs.SetDatabase(&database)->Init();
|
||||||
|
|
||||||
if (!RuleB(Logging, PlayerEventsQSProcess)) {
|
|
||||||
LogInfo("[PlayerEventQueueListener] Booting queue processor");
|
|
||||||
std::thread(PlayerEventQueueListener).detach();
|
|
||||||
}
|
|
||||||
|
|
||||||
auto loop_fn = [&](EQ::Timer* t) {
|
auto loop_fn = [&](EQ::Timer* t) {
|
||||||
Timer::SetCurrentTime();
|
Timer::SetCurrentTime();
|
||||||
|
|
||||||
@@ -435,6 +425,10 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
client_list.Process();
|
client_list.Process();
|
||||||
|
|
||||||
|
if (player_event_process_timer.Check()) {
|
||||||
|
player_event_logs.Process();
|
||||||
|
}
|
||||||
|
|
||||||
if (PurgeInstanceTimer.Check()) {
|
if (PurgeInstanceTimer.Check()) {
|
||||||
database.PurgeExpiredInstances();
|
database.PurgeExpiredInstances();
|
||||||
database.PurgeAllDeletedDataBuckets();
|
database.PurgeAllDeletedDataBuckets();
|
||||||
@@ -484,6 +478,8 @@ int main(int argc, char **argv)
|
|||||||
LogInfo("Signaling HTTP service to stop");
|
LogInfo("Signaling HTTP service to stop");
|
||||||
LogSys.CloseFileLogs();
|
LogSys.CloseFileLogs();
|
||||||
|
|
||||||
|
WorldBoot::Shutdown();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+14
-4
@@ -30,6 +30,8 @@
|
|||||||
extern ZSList zoneserver_list;
|
extern ZSList zoneserver_list;
|
||||||
extern WorldConfig Config;
|
extern WorldConfig Config;
|
||||||
|
|
||||||
|
auto mutex = new Mutex;
|
||||||
|
|
||||||
void WorldBoot::GMSayHookCallBackProcessWorld(uint16 log_category, const char *func, std::string message)
|
void WorldBoot::GMSayHookCallBackProcessWorld(uint16 log_category, const char *func, std::string message)
|
||||||
{
|
{
|
||||||
// we don't want to loop up with chat messages
|
// we don't want to loop up with chat messages
|
||||||
@@ -136,9 +138,7 @@ bool WorldBoot::LoadDatabaseConnections()
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
// Multi-tenancy - content database
|
||||||
* Multi-tenancy: Content database
|
|
||||||
*/
|
|
||||||
if (!c->ContentDbHost.empty()) {
|
if (!c->ContentDbHost.empty()) {
|
||||||
if (!content_db.Connect(
|
if (!content_db.Connect(
|
||||||
c->ContentDbHost.c_str(),
|
c->ContentDbHost.c_str(),
|
||||||
@@ -153,7 +153,12 @@ bool WorldBoot::LoadDatabaseConnections()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
content_db.SetMysql(database.getMySQL());
|
content_db.SetMySQL(database);
|
||||||
|
// when database and content_db share the same underlying mysql connection
|
||||||
|
// it needs to be protected by a shared mutex otherwise we produce concurrency issues
|
||||||
|
// when database actions are occurring in different threads
|
||||||
|
database.SetMutex(mutex);
|
||||||
|
content_db.SetMutex(mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
@@ -652,3 +657,8 @@ void WorldBoot::CheckForPossibleConfigurationIssues()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void WorldBoot::Shutdown()
|
||||||
|
{
|
||||||
|
safe_delete(mutex);
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ public:
|
|||||||
static void RegisterLoginservers();
|
static void RegisterLoginservers();
|
||||||
static bool DatabaseLoadRoutines(int argc, char **argv);
|
static bool DatabaseLoadRoutines(int argc, char **argv);
|
||||||
static void CheckForPossibleConfigurationIssues();
|
static void CheckForPossibleConfigurationIssues();
|
||||||
|
static void Shutdown();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user