Search the Community

Showing results for tags 'WotLK'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Important
    • Announcements
    • Getting Started
  • Modding
    • Modeling
    • Level Design
    • Interface
    • Serverside
    • Noggit
    • Miscellaneous
    • Retro-Porting
    • Useful Services
  • Projects
    • Recruitment
    • Paid Work
    • Showcase
    • Machinima
  • Community
    • General
    • Random
    • Gallery
    • Releases
    • The Graveyard

Categories

  • Tools
    • Uncategorized
    • Map Editing
    • Model Editing
    • DBC & DB2 Editing
    • Serverside
    • CASC & MPQ
  • Resources
    • Graphics
    • Uncategorized
    • Models
    • Maps
    • Client Patches
  • 010 Editor Scripts and Templates

Categories

  • Projects
  • Machinima
  • Software Development

Categories

  • Beginner
    • Русский
    • Deutsch
  • Modeling
    • Česky
    • Français
  • Level Design
  • Interface
  • Serverside
  • Miscellaneous
    • Česky
    • Français
  • Retro-Porting
  • Machinima

Categories

  • Tutorials
  • Timelapse
  • Miscellaneous

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Discord


Twitter


Skype

Found 81 results

  1. Version 1.0.4.469

    264 downloads

    ADTConverter [Deprecated] Convert your ADTs from Wotlk(3.3.5) to WoD(6.x.x)/Legion(7.x.x) The ADTConverter is deprecated and no longer supported Requirements The converter requires NET Framework 4.0 How to use Put your Wotlk ADTs in the data Folder Start the ConvertADTs.cmd Issues Please post your Issues here Thanks PTNGee for the "PTNG_ADT_Converter"
  2. Greetings, For the past few days i've been experimenting with adding custom damage schools and resistances to the game on top of what is already there. So far i've edited the following files... Core> Creature.cpp Core> CharacterDatabase.cpp Core> ItemTemplate.cpp Core> ItemTemplate.h Core> Player.cpp Core> Unit.cpp Core> Unit.h Core> ObjectMgr.cpp Core> SharedDefines.h Core> UpdateFieldFlags.cpp Core> ThreatManager.cpp DB> Characters.character_stats DB> World.creature_template DB> World.item_template DBC> Resistances.dbc Interface/FrameXML> Constants.lua Interface/FrameXML> GlobalStrings.lua ... and the core will build with 0 errors, however there are multiple problems in-game so I must be missing something. Current issues: 1. Characters are broken in many ways. Items don't show in bags or the character frame, NPCs are invisible/phased out, and the drunk effect is constantly at 100% (probably an error in characterdatabase.cpp, but I have yet to find where) CharacterDatabase.cpp Changes on 537-538 2. The core reads the item_template incorrectly, seems to look for values in their original fields. ObjectMgr.cpp Changes on 2457, 2551-2606 ItemTemplate.h Changes on 654-656 If anyone wants to offer help or insights, it would be appreciated. I'll continue hitting the code with a wrench and updating when progress is made. Once this has been solved I plan to make a tutorial out of it. Update 1: Custom elemental damage now shows properly on spell and weapon tooltips in-game. Loading an item tooltip with custom resistances crashes the game. Update 2: Looks like despite editing ObjectMgr.cpp, the core won't read the item_template table properly. It seems to look for values in their original fields, which breaks all the rows that come after the newly added ones. Added to current issues.
  3. Version 1.1

    441 downloads

    There are two versions of WoW 335 executable here: WoWGen10.exe which - contains all features listed down below INCLUDING the hacky ones such as multi jump WoWGen10_WithoutHack.exe - contains all features listed down below EXCLUDING the hacky ones such as multi jump List of Features - Removed MD5 / SIG - Game version changed to my name initials and discord tag (A.S.E A2#6767) Release date to Dec 14 1337 for fun The real version of this file is still 3.3.5 - Druid on level 101+ get NO error when opening Base Stats - Every level 101+ can sit on barb Chair without Error - Does not Create CACHE file -Added LUA UNLOCKER you dont need to Manuly Unlock LUA functions via any 3rd party program this Exe has most of them unlocked by itself so far unlocked are (AcceptBattlefieldPort, SetCurrentTitle, UninviteUnit, ReloadUI, FocusUnit, ClearFocus, ... , InteractUnit, CastSpellByName, CastSpellByID, Movement functions ... , CancelLogout AttackTarget (error is still printed)) - Is able to Load Data directly from the folder no need to place them into the MPQ eg - M:\Client335\Data\DBFilesClient\ItemDisplayInfo.dbc is a viable path for wow.exe to read it in case wow.exe is in Client335 - Does not uses scan.dll to detect Cheat Engine at all ========= HACKY FEATURES========= - Allows Air Jumps at all time - You understand to every lang - /follow works simply on everysingle target no matter what target Due to popular demand im going to list of some Offsets for the edits I have done so you can do edits on your own or remove some unwanted functions
  4. New 52809 spells fully implemented their visualization nonexistent mechanics replaced by similar The whole process took a little more than 100-110 hours Download: https://yadi.sk/d/usF5d6uwuWKxL
  5. Hi there, I am the admin of a couple of WoW servers and we are looking for experient model editors and importers. Work is basically two-fold: 1. Fix some previously imported mounts and one NPC 2. Add about 25 or so new mounts and pets, plus about 25 transmog items. This will be a paid gig so serious and professional replies only, please. Feel free to get in touch with me directly via Discord: Janitor#2871 Thanks a lot, Janitor
  6. Version 1.0.0

    57 downloads

    Put together this HD Race Icon package a while ago. Thought I'd share it for anyone who was interested. Just updates the Race Icons with some HD faces. Drop this pack in to the /Data
  7. Version 1.0.0

    241 downloads

    Basically, multitexturing combines the alpha channel of two different textures, creating more variety in the particles and making it more realistic. It was introduced in Cataclysm but widely used since WoD for fire effects. Usually, the textures used for particles in WoD are: World\Expansion05\Doodads\IronHorde\FIRE_2X2_SHARP_MOD4X.BLP World\Expansion05\Doodads\IronHorde\Fire_Bright_Mod2x_A.BLP I tried to emulate this multitexturing effect in WotLK by combining both textures with Photoshop and increasing the rows and columns to give it more variety (since we can't animate the particle texture in Wotlk, each block has a different texture position). The result is quite decent. I would say it's 80% accurate because some features, like combining blend and additive blendingtypes on the same particle are not available in WotLK. I made two texture versions: one with 16 blocks and another with 64 (more realistic). There is also a test model included. External link: http://www.mediafire.com/file/mpmmcvq9g8s7qij/MultiTexture_Fire_Particle.rar
  8. Version 11

    2,213 downloads

    There was a report about this supposedly containing malware, though my PC is clean, the pack is clean, and the reporting person's antimalware was behaving in a very odd and jumpy manner overall. Note that this pack contains couple of apps which are pretty much straight up hacks and many apps from "unknown publishers", there's also file downloading launcher and whatnot - it is susceptible material to being marked by antimalware. It should be clean. But it's up to you whether you trust me on that. As a rule of thumb, please, check README.txt file in any directory where such file is before using that part to ensure you know all the important info. Contents: AmarothTools AmarothsLauncherRelease - a fairly primitive launcher based on reading config files and downloading/uploading changelog, patches and addons from FTP. AmarothsToolkit - old version of my toolkit, later I decided to split the project into the following tools. ClientItem - a pair of tools fo syncing item_template <-> Item.dbc. GobGenerator - generates gobjects in gameobject_template out of models provided in GameObjectDisplayInfo.dbc ListfileCreation - do not use unless you know what are you doing. NPCGenerator - for Creature displayID WMV > DBC > DB pipeline. WMOListFile - for obtaining a full list of files used by ADTs, M2/MDX and WMO in the folders under this. Note that its code sucks and is not 100% perfect. CASC CascView - 32 and 64bit versions of CascView, required for obtaining Blizzard files for conversion into WotLK. Listfile - listfiles for extracting files with CascView. DBC LightMapper - can be used for a great visualisation of lights on a map. WoWSpellEditor_1.8.8 - haven't gotten to actually testing this tool yet, but definitely worth sharing. WDBX Editor - for DBC editing, DBC <-> CSV conversions etc. EnGBBlizzlikeDBCs - just blizzlike DBCs, can be useful as a backup. Map AdtAdder - a small tool for mass copy-pasting ADT for inicial filling of a new map/newly expanded map, don't forget to run offsetfix afterwards as well. ADTGrids - some helpers you can use, reflecting basic grids on ADTs. FuTa - a tool for importing and exporting alpha maps (painting textures on ADTs with Photoshop). GroundEffects - tools for applying, removing or changing ground effects on ADT. GruulMeWDT - my preferred way of editing (editing, not creating!) WDT files. NoggitQt_3_2771 - an up to date test version of map editor. NoggitSDL_3_1408 - this is old SDL version of Noggit. It is non-public release, newer than SDL 1.4, fairly stable, may be able to open something Qt cannot. Rius Zone Masher - I do not really remember why I have not ever been using this tool for creation of new maps - I just know I have not been using this tool :D. Sharing it regardless. Models anim porter - I do not even remember what this is for, do not know wthere it is up to date, nor whether it is still useful at all. M2ModRedux 4.6.1 - same like anim porter. MDLVIS 1.40 - same like anim porter. MDX - same like anim porter. MultiConverter_3.3.0 - Officially Legion > WotLK converter, but seems to do alright with BFA as well. Scripts - a mix of random stuff, same like anim porter. OBJtoM2 could be useful if you for any reasons cannot use WoW Blender Studio. Leaving it here for the time being. WoW Blender Studio - still under development, but should make all the other stuff in Models section outdated and redundant. MPQ FuckItUp.exe - removes (listfile) from MPQ, making files more difficult to extract, and thus edit or steal. MPQEditor.exe - v3.2.0.535 is a very old version, but I found it to be very reliable. I had issues with up to date versions, and rather reverted back instead of risking having files corrupted. Other 010 - scripts and templates for 010 Editor. Mordred_LoginScreen - what I have used to make my own custom login screens. PuTTy_0.73 - for managing the server WMT335a - camera hack, light testing. WMV - couple of versions of WoW Model Viewer. HxDsetup.exe - HxD can be used as an alternative hex editor, unlikely to be useful to any 010 Editor owner. xyz-hack.exe - useful for precise gobject spawning. This is a hack, please, do not abuse. Textures BLPConverterGUI - enables mass PNG <-> BLP converting. BLPPhotoshopPlugin_1.0 - Photoshop BLP file support. README.txt - version, release date, links… Wow.exe - removed MD5 check, enabling UI edits within patches etc. Share this with your players, especially if you want to customize anything in your UI, including the login screen. If you are following my english YT channel, this is a toolpack I will be using there. Overview video: My Eng YT channel HERE
  9. Welcome to this quick guide. ** DISCLAIMER ** This will NOT downport character models Since many of you have been PMing me desperately asking : "How do you downport this shit man??" Here you go. Enjoy. Tools needed: CascExplorer Adspartan's Multiconverter BfA Listfile (put this in your CascExplorer folder) Thanks to Wungasaurus for the correct listfile ------------------------------------------------------- Enjoy your new models, homeboy
  10. Sharing this here as well (copy/paste from Modcraft) Hi guys! Took me some time to post this because I couldn't find any fan for my laptop.... But I did some days ago so... Here you go! As I said before, I acknowledge this is not much. But I just wanna play my part in Modcraft as best as I can even if it doesn't mean a lot. First you will need the tables and rows which the script uses : SQL File Then the Creature Script : StockExchange.cpp /* 1.0.0 StockExchange NPC Script Description ----------- The script uses data from DB to define 5 different stocks (Name, Worth (in gold coins), Scale (scale of the stock's variations), OwnedRatio(so that players can't acquire more than its worth)). Players can buy and sell shares of those stocks, provided they have bought a licence first. Thanks to Rochet2 for the nice menu look and for helping me clean this script up! */ #include "ScriptPCH.h" #include "Config.h" #include "ScriptedCreature.h" #include "Language.h" #include "time.h" #define STOCKNUMBER 5 #define GOLDTOCOPPER 10000 namespace { class CS_StockExchange : public CreatureScript { public: CS_StockExchange() : CreatureScript("Creature_StockExchange") { } uint32 stock = 0; void OnPlayerTextEmote(Player* player, uint32 textEmote, uint32 emoteNum, ObjectGuid guid) override { } bool OnGossipHello(Player* plr, Creature* creature) override //MAIN MENU { //StockUpdate every 2 minutes QueryResult result = WorldDatabase.PQuery("SELECT `UpdateTime` FROM `stocks` WHERE iD = 0"); if (!result) return false; Field* field = result->Fetch(); uint32 stockPrevTime = field[0].GetUInt32(); uint32 realCurrTime = getMSTime(); uint32 stockDiff = getMSTimeDiff(stockPrevTime, realCurrTime); if (stockDiff >= 120000) { uint32 timeMult; timeMult = stockDiff / 120000; if (StockUpdate(timeMult)) TC_LOG_INFO("server.worldserver", "Stocks have been updated (%u)", realCurrTime); else { TC_LOG_INFO("server.worldserver", "Error while updating stocks..."); } stockPrevTime = realCurrTime; WorldDatabase.PExecute("UPDATE `stocks` SET `UpdateTime` = %u WHERE `iD` = 0", getMSTime()); } WorldSession* session = plr->GetSession(); QueryResult licencetest = CharacterDatabase.PQuery("SELECT `1`, `2`, `3`, `4`, `5` FROM `character_stockdata` WHERE iD = %u", plr->GetGUIDLow()); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Scroll_08:30:30:-18:0|tWhat are the current exchange rates?", GOSSIP_SENDER_MAIN, 2); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Book_11:30:30:-18:0|tHow many unsold shares are there left?", GOSSIP_SENDER_MAIN, 1); if (!licencetest) { plr->ADD_GOSSIP_ITEM_EXTENDED(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_MISC_NOTE_02:30:30:-18:0|tI'd like to acquire a trade licence.", GOSSIP_SENDER_MAIN, 12, "This will cost you", 400000, false); } else //Player can invest if he has a licence { plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Coin_02:30:30:-18:0|tI'd like to manage my portfolio.", GOSSIP_SENDER_MAIN, 3); } plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tIt was a pleasure to make business with you.", GOSSIP_SENDER_MAIN, 4); plr->SEND_GOSSIP_MENU(DEFAULT_GOSSIP_MESSAGE, creature->GetGUID()); return true; } bool OnGossipSelect(Player* plr, Creature* creature, uint32 sender, uint32 uiAction) override { int32 amount = 0; plr->PlayerTalkClass->ClearMenus(); WorldSession* session = plr->GetSession(); std::ostringstream message; float ownedratio[5]; int worth[5]; for (int iter = 1; iter < 6; iter++) { QueryResult result = WorldDatabase.PQuery("SELECT `OwnedRatio`,`Worth` FROM `stocks` WHERE iD = %u", iter); if (!result) return false; Field* field = result->Fetch(); ownedratio[iter-1]= field[0].GetFloat(); worth[iter-1] = field[1].GetInt32(); } switch (uiAction) { case 1: //REMAINING SHARES message << "REMAINING SHARES (in gold coins)$BRavenholdt Manor : " << worth[0] * (1 - ownedratio[0]) << "$BBloodsail : " << worth[1] * (1 - ownedratio[1]) << "$BSteamwheedle Cartel : " << worth[2] * (1 - ownedratio[2]) << "$BTheramore Silk Traders : " << worth[3] * (1 - ownedratio[3]) << "$BEldoar'norore : " << worth[4] * (1 - ownedratio[4]); creature->Whisper(message.str(), LANG_UNIVERSAL, plr); plr->PlayerTalkClass->SendCloseGossip(); OnGossipHello(plr, creature); break; case 2: //CURRENT EXCHANGE RATES message << "CURRENT EXCHANGE RATES (in gold coins)$BRavenholdt Manor : " << worth[0] << "$BBloodsail : " << worth[1] << "$BSteamwheedle Cartel : " << worth[2] << "$BTheramore Silk Traders : " << worth[3] << "$BEldoar'norore : " << worth[4]; creature->Whisper(message.str(), LANG_UNIVERSAL, plr); plr->PlayerTalkClass->SendCloseGossip(); OnGossipHello(plr, creature); break; case 3: //MANAGE PORTFOLIO MENU (5-10) plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Helmet_30:30:30:-18:0|tRavenholdt Manor", GOSSIP_SENDER_MAIN, 5); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Helmet_66:30:30:-18:0|tBloodsail", GOSSIP_SENDER_MAIN, 6); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Bomb_03:30:30:-18:0|tSteamwheedle Cartel", GOSSIP_SENDER_MAIN, 7); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Chest_Cloth_56:30:30:-18:0|tTheramore Silk Traders", GOSSIP_SENDER_MAIN, 8); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_FireDancer_01:30:30:-18:0|tEldoar'norore", GOSSIP_SENDER_MAIN, 9); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tBack", GOSSIP_SENDER_MAIN, 10); plr->SEND_GOSSIP_MENU(50002, creature->GetGUID()); break; case 4: //CLOSE GOSSIP plr->PlayerTalkClass->SendCloseGossip(); break; case 5: //MANAGE RAVENHOLDT STOCK stock = 1; plr->ADD_GOSSIP_ITEM_EXTENDED(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Letter_03:30:30:-18:0|tBuy shares", stock, 0, "How much gold would you like to invest?", 0, true); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Coin_16:30:30:-18:0|tSell all shares", stock, 11); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tBack...", GOSSIP_SENDER_MAIN, 3); plr->SEND_GOSSIP_MENU(50002, creature->GetGUID()); return true; break; case 6: //MANAGE BLOODSAIL STOCK stock = 2; plr->ADD_GOSSIP_ITEM_EXTENDED(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Letter_03:30:30:-18:0|tBuy shares", stock, 0, "How much gold would you like to invest?", 0, true); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Coin_16:30:30:-18:0|tSell all shares", stock, 11); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tBack...", GOSSIP_SENDER_MAIN, 3); plr->SEND_GOSSIP_MENU(50002, creature->GetGUID()); break; case 7: //MANAGE GOBLIN STOCK stock = 3; plr->ADD_GOSSIP_ITEM_EXTENDED(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Letter_03:30:30:-18:0|tBuy shares", stock, 0, "How much gold would you like to invest?", 0, true); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Coin_16:30:30:-18:0|tSell all shares", stock, 11); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tBack...", GOSSIP_SENDER_MAIN, 3); plr->SEND_GOSSIP_MENU(50002, creature->GetGUID()); break; case 8: //MANAGE SILKTRADERS STOCK stock = 4; plr->ADD_GOSSIP_ITEM_EXTENDED(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Letter_03:30:30:-18:0|tBuy shares", stock, 0, "How much gold would you like to invest?", 0, true); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Coin_16:30:30:-18:0|tSell all shares", stock, 11); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tBack...", GOSSIP_SENDER_MAIN, 3); plr->SEND_GOSSIP_MENU(50002, creature->GetGUID()); break; case 9: //MANAGE ELDOAR'NORORE STOCK stock = 5; plr->ADD_GOSSIP_ITEM_EXTENDED(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Letter_03:30:30:-18:0|tBuy shares", stock, 0, "How much gold would you like to invest?", 0, true); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/INV_Misc_Coin_16:30:30:-18:0|tSell all shares", stock, 11); plr->ADD_GOSSIP_ITEM(GOSSIP_ICON_MONEY_BAG, "|TInterface/ICONS/Ability_Spy:30:30:-18:0|tBack...", GOSSIP_SENDER_MAIN, 3); plr->SEND_GOSSIP_MENU(50002, creature->GetGUID()); return true; break; case 11: //TRANSACTION = SELL if (!SellStock(plr, stock, creature)) plr->GetSession()->SendNotification("Error while selling shares... Please contact the administrator."); else { } plr->PlayerTalkClass->SendCloseGossip(); OnGossipHello(plr, creature); break; case 12: //CREATE PLAYER LICENCE ( = ROW IN CHARACTER_STOCKDATA ) if (plr->GetMoney() >= 40*GOLDTOCOPPER) { if (CreateLicence(plr)) { amount = 40*GOLDTOCOPPER; plr->ModifyMoney(-amount); message << "Your licence has been acquired successfully, " << plr->GetName() << "!"; creature->Say(message.str(), LANG_UNIVERSAL, plr); } else plr->GetSession()->SendNotification("Error while registering your licence. Please contact the administrator."); } else { message << "I am afraid you do not have these 40 gold coins, " << plr->GetName() << "..."; creature->Say(message.str().c_str(), LANG_UNIVERSAL, plr); } plr->PlayerTalkClass->SendCloseGossip(); OnGossipHello(plr, creature); break; default: OnGossipHello(plr, creature); break; } return true; } bool OnGossipSelectCode(Player* plr, Creature* creature, uint32 stock, uint32 uiAction, const char* code) override { plr->PlayerTalkClass->ClearMenus(); std::ostringstream message; int32 amount = 0; std::string investment = code; static const char* allowedcharacters = "1234567890"; if (!investment.length() || investment.find_first_not_of(allowedcharacters) != std::string::npos) //If investment was specified incorrectly { plr->GetSession()->SendNotification("Your investment bust be declared using figures.(0123456789)"); } else //If investment was specified properly { //Statements uint32 investmentI = uint32(atol(code)); if (investmentI*GOLDTOCOPPER <= plr->GetMoney()) { QueryResult result1 = WorldDatabase.PQuery("SELECT `OwnedRatio`,`Worth` FROM `stocks` WHERE iD = %u", stock); if (!result1) return false; Field* field = result1->Fetch(); float ownedratio = field[0].GetFloat(); int worth = field[1].GetInt32(); QueryResult result2 = CharacterDatabase.PQuery("SELECT `%u` FROM `character_stockdata` WHERE iD = %u", stock, plr->GetGUIDLow()); if (!result2) return false; field = result2->Fetch(); float initialratio = field[0].GetFloat(); float ratio = static_cast<float>(investmentI) / worth; if (ratio <= (1-ownedratio)) //If enough stocks left { int amount = investmentI*GOLDTOCOPPER; plr->ModifyMoney(-amount); // substract it from player money CharacterDatabase.PExecute("UPDATE `character_stockdata` SET `%u` = %f WHERE `iD` = %u", stock, initialratio + ratio, plr->GetGUIDLow()); WorldDatabase.PExecute("UPDATE `stocks` SET `OwnedRatio` = %f WHERE `iD` = %u", ownedratio + ratio, stock); } else { plr->GetSession()->SendNotification("There are not so many shares for you to acquire, check the remaining shares before trying to invest."); } } else { message << "You do not have so much money, " << plr->GetName() << "."; creature->Say(message.str().c_str(), LANG_UNIVERSAL, plr); } } plr->PlayerTalkClass->SendCloseGossip(); OnGossipHello(plr, creature); return true; } private : bool SendMoneyByMail(ObjectGuid player, uint64 money, int32 stock) { MailSender sender(MAIL_CREATURE, 50038, MAIL_STATIONERY_DEFAULT); std::string stockName; switch (stock) { case 1: stockName = "Ravenholdt Manor"; break; case 2: stockName = "Bloodsail"; break; case 3: stockName = "Steamwheedle Cartel"; break; case 4: stockName = "Theramore Silk Traders"; break; case 5: stockName = "Eldoar'norore"; break; default: return false; } std::ostringstream text; text << "You have requested the General Exchange Hall to sell your shares of the " << stockName << " stock. This has yielded some " << money/GOLDTOCOPPER << " gold coins from which I have deducted " << money/10/GOLDTOCOPPER << " in the sake of various sale and accountancy costs. Enclosed to this letter are " << 9* money/10/GOLDTOCOPPER << " gold coins which come down to you."; MailDraft draft("Share Sale", text.str().c_str()); draft.AddMoney(money * 9 / 10); SQLTransaction letter = CharacterDatabase.BeginTransaction(); draft.SendMailTo(letter, MailReceiver(NULL, player.GetCounter()), sender); CharacterDatabase.CommitTransaction(letter); return true; } bool SellStock(Player* plr, int32 stock, Creature* creature) /*SELL ALL THE SHARES OF THE SPECIFIED STOCK */ { QueryResult result2 = WorldDatabase.PQuery("SELECT `OwnedRatio`,`Worth` FROM `stocks` WHERE iD = %u", stock); if (!result2) return false; QueryResult result1 = CharacterDatabase.PQuery("SELECT `1`, `2`, `3`, `4`, `5` FROM `character_stockdata` WHERE iD = %u", plr->GetGUIDLow()); if (!result1) return false; Field* field = result1->Fetch(); float ratio = field[stock - 1].GetFloat(); if (ratio == 0) { plr->GetSession()->SendNotification("You don't own any share of this stock..."); } else //ONLY IF PLAYER OWNS SOMETHING { Field* field = result2->Fetch(); float newownedratio = field[0].GetFloat()-ratio; int worth = field[1].GetInt32(); if (!SendMoneyByMail(plr->GetGUID(), worth*GOLDTOCOPPER*ratio, stock)) return false; std::ostringstream text; text << "I shall make the arragement for the sale, " << plr->GetName() << ", you will receive your money by mail soon enough."; creature->Say(text.str().c_str(), LANG_UNIVERSAL); CharacterDatabase.PExecute("UPDATE `character_stockdata` SET `%u` = 0 WHERE `iD` = %u", stock, plr->GetGUIDLow()); WorldDatabase.PExecute("UPDATE `stocks` SET `OwnedRatio` = %f WHERE `iD` = %u", newownedratio, stock); } return true; } bool CreateLicence(Player* plr) { SQLTransaction trans = CharacterDatabase.BeginTransaction(); trans->PAppend("REPLACE INTO `character_stockdata` (`iD`, `1`, `2`, `3`, `4`, `5`) VALUES (%u, 0, 0, 0, 0, 0)", plr->GetGUIDLow()); CharacterDatabase.CommitTransaction(trans); return true; } bool StockUpdate(int timeMult) { int32 stockWorth[STOCKNUMBER], newStockWorth[STOCKNUMBER]; int32 stockScale[STOCKNUMBER]; float stockOwnedRatio[STOCKNUMBER]; srand(time(NULL)); // Load stock values from DB for (int itr = 0; itr < STOCKNUMBER; itr++) { QueryResult result = WorldDatabase.PQuery("SELECT `Scale`,`OwnedRatio`,`Worth` FROM `stocks` WHERE iD = %u", itr + 1); if (!result) return false; Field* field = result->Fetch(); stockScale[itr] = field[0].GetInt32(); stockOwnedRatio[itr] = field[1].GetFloat(); stockWorth[itr] = field[2].GetInt32(); } // Dicethrows and Upload values to DB for (int itr = 0; itr < STOCKNUMBER; itr++) { char sign; if (stockWorth[itr] + stockScale[itr]*timeMult > 200000) //Don't go over 200.000 gold coins sign = -1; else if (stockWorth[itr] - stockScale[itr]*timeMult < 0) //Nor below 0 sign = 1; else { int dice = (rand() % 101) + floor(10 * stockOwnedRatio[itr]) - 55; sign = dice / abs(dice); } newStockWorth[itr] = stockWorth[itr] + sign*stockScale[itr]*timeMult; WorldDatabase.PExecute("UPDATE `stocks` SET `worth` = %u WHERE `iD` = %u", newStockWorth[itr], itr + 1); } return true; } }; } void AddSC_Stock() { new CS_StockExchange(); } I know this code ain't perfect but I'm still open for suggestions and critics. Have a nice day.
  11. Hello guys! Im looking some guy which know work in 010Editor and he will be so kind to make some Tutorial HOW TO -> fix creatures from Cata/Wotlk/Legion.............. I mean fix Flying (Swinging wings) Just simply change this swiming animation to flying animation. It would be really nice, because im looking for it for so long, can't find nowhere any clue & nobody can help me with this. So if it will be possible, please just left reply in here or contact me on: adko.turac@gmail.com or im on discord as well : GoldenQo #5577 Thanks! Your GoldenQo
  12. Version 1.0.0

    324 downloads

    I made this script to convert multiple models from Legion to Wrath of the Lich King or Warlords of Draenor. Requires 010 editor. The first script removes the unnecessary information before the M2 header and changes its version from 274 to 272 to make it work in WoD. The second one does the same but also runs Philip's converter on the M2 files to make them work in Wotlk. How it works: -Put the models you want to covert inside the folder called "Models". -Run "Legion M2 to Wod/Wotlk.bat" and wait This script can also read all the subfolders inside "models" and convert every M2 inside of them. EXTERNAL LINK: Legion to Wotlk Legion to WoD To make this script work there must be an entry for 010 editor in environment variables (this allows windows to launch 010 editor through the cmd window, otherwise it won't work): -Right click on My computer -> properties -> advanced system settings -> environment variables -> Path -Click edit -Add your 010 editor directory to the list separated from the rest of the entries by a ";" (Example: ;C:\Program Files (x86)\010 Editor) (Detailed guide on this video)
  13. Version 3.0

    235 downloads

    This mod adds bloodier combat effects to the game and includes some blood splats similar to those removed during the classic beta. Download: WotLK - Cata (Old version) V2.0: -Fixed crashes. V3.0: -Violence level is now always 2 and cannot be disabled or changed. -Added purple blood (id 5). IMPORTANT: to make it work correctly go to video settings and turn "projected textures" on. Also, set the "Particle Density" to High and set the Texture Filtering to High to avoid visual glitches. If you are using V2, make sure your violence level is set to 2. In-game, type: /console violenceLevel 2 Known bugs: -If you zoom in to first person view, you won't be able to see the blood splats from your character. -If a character morphs into another model, all the blood splats from that character will disappear. -The blood splats change color if your character changes color (curses, venom, etc.). -The blood splats scale changes if the scale of your character changes. -Blood effects do not show if you one-hit kill the target. It's hardcoded into the client and can't be changed as far as I know (happens with the default blood as well). -It's not possible to use this mod in MoP since the game cleans all blood splats each time your character is hit or dies. Note: The splats on the ground disappear after 45 seconds. You can change it by editing the particle lifespan in 010editor. If you think there are too many blood splats to the point they overlap or affects the performance, just change the default particle emissionrate (12) to 7 or less with 010editor. Blood color is set in CreatureModelData.dbc, column 6 (1 = red, 2 = green, 3 = black, 4 = blue, 5 = purple).
  14. Hi, I got the legion creature models from I think Laviathan. But I dont want the mounts, only the creatures. Is there a way to keep the old models for mounts but upgrade the creatures to the new ones? Thanks in advance. If someone can do the job I will be happy to pay I got paypal, or i can do bank transfer.
  15. Version 2.0

    3,349 downloads

    All the patches will be done as non-encrypted soon! This file contains HD characters and NPC models and textures for WotLK. The archive contains 4 patches: patch-w.mpq contains: NPC models Animations BakedNPCTextures patch-x.mpq contains: Character models Animations patch-enUS-w.mpq and patch-enUS-x.mpq contain: DBCs If you have questions/requests feel free to ask it in the comments or by PM, I will answer it as soon as possible. P.S. The previous versions of files by @Roarl were deleted, because of the wrong and non-existed links. All thanks should be given to him.
  16. Version v1

    140 downloads

    This script for 010editor converts Wrath of the Lich King .M2 and .SKIN files to Cataclysm, Mists of Pandaria and Warlords of Draenor. Supports: -Cameras. -Particles. -Animation flags. -Projected shadows. -Transparency flags. -Blend mode overrides. Also includes: -Batch file converter. -Shadow remover script. -Sequence flag remover script. -Skin template for 010editor with shadow batches added. DOWNLOAD Some notes and technical information: -make sure you are working on "OVR" mode before running the script. Projected shadows As you may know, projected shadows are stored inside the .skin file since Cataclysm. This script creates shadows for all texture units, including those with additive materials. If you want to remove the shadows from a specific geoset, just open the skin file with 010editor, run the skin template included inside the tools folder and delete the texture batch corresponing to that mesh. If you want to remove ALL shadows from a model, just use the "Cataclysm Shadow Remover" included in the tools folder (it's useful for stuff like fire or lights, that are not supposed to cast a shadow). As you can see, the glow, which is a billboarded square with addivite renderflag, is casting a shadow and the game can't handle shadows with additive materials. To remove it I selected its shadow batch, deleted it and reduced the shadow batch count by 1 in 010editor. More info in this video: Flying mount animations In WotLK, mounts use swimming animations for flying. Since Cataclysm, however, there are separate ids for swimming and flying since flying mounts can now be used as ground mounts and therefore swim. But, if a mount model doesn't have fly animations, the game will use its swimming animations. That's why this script doesn't duplicate them. It's not necessary. WotLK flying mounts should still work perfectly in Cata, MoP and WoD. Reflections This script doesn't convert reflections since there is no exact way to know when a texture unit is used for a reflection, glow, etc. So you must do it by hand. Just open your skin file, convert it to Cata+, go to the texunit with the reflection and change its shader to "144". Here is an example using "Creature\Murloc\Murloc00.skin": You can change the "texunit" and "texunit2" fields to "0" but it's optional since those fields are unused since Cataclysm, but just in case. Animation sequence flags Sequence flags are 128 digits bigger since Cataclysm. Without these flags some animation frames loop when they shouldn't and sequences don't blend correctly. This script fixes that problem and gives smoothness to the animations. If you want to remove the extra flags for some reason, just run the "Cataclysm Sequence Flag Remover" script included in the tools folder
  17. Version 0.0.1

    433 downloads

    Alpha Pack Download Link : https://drive.google.com/open?id=0B0at7TKGXopAcGJrLVppUkItanM Includes : Patch-C : Creature & Textures Patch-I : Item Cata-Mop-WoD Patch-L : Item Legion 7.0.1 > 7.1.5 (Not Fully Added in dbc) Patch-W : Buildings Patch-H : HD Pack (HD Pack Required For 3D Belt) Credits to Thrind Server Side : DBC Server Side : Item_Template SQL -- Update 1 : Added : Spell.dbc (enGB, frFR, enUS) Added : SqlScript.sql Added : Patch-enGB-4.MPQ (Spell for enGB client) Added : Patch-enUS-4.MPQ (Spell for enUS client) Added : CoreScript - Transmog Script for 3D Belt - SpellGeneric.cpp Added : Readme. -- Update 2 : Added Sql for Legion Artifact Weapons PS : Looking for extra hands to work with me on this project. -- Update 3 update Patch-enGB-4/Patch-frFR-4/Patch-EnUS-4 Updated Spell.dbc brings 314 New Compagnon list here : http://www.wowhead.com/spells/compan...lls:200+1+17+2 -- Update 4 Patch-W Should no more cause the game to have green texture in some place of azeroth. Say Thanks also help me continue the project ! The Goal : I'm aiming to help every new and old server to get a decent content. Patches won't be encrypted. A Community Top Site will be launched. A Community Launcher is in preparation (in c#) A Community DBC Files Checker is in preparation (so we see if your server is compatible) the idea is that all server / player use this client as a base. and server would only make download their custom maps if they have one. Join the retrolution : https://www.facebook.com/WoWRetrolution/
  18. I've spent the past few weeks working on a tool that makes editing LightIntBand.dbc so much easier. You can get it here, along with instructions: And you can get the source here: https://github.com/MajinCry/WotLK---LightIntBand-Editor
  19. Version 1.01

    70 downloads

    There are generic .dbc editors available, but they are absolutely not geared towards being good for editing specific .dbc files, the first one I came across being LightIntBand.dbc. So I decided to make a program that is much easier to use, intuitive, and gives you an idea of what your changes will look like. Made with Delphi community edition. Should work on XP, will definitely work on Windows 7, 8, 8.1, and 10. Github repository: https://github.com/MajinCry/WotLK---LightIntBand-Editor It's very simple to use. Here are the steps: 1. Much of the interface is disabled when first run. To enable it, click on File -> Load... -> Select LightIntBand.dbc 2. Now the interface will appear, after freezing for a couple seconds. That's normal, the tree list of all the records just takes a short while to be populated due to all the records present. 2a. If you want to add new records, make sure the tree list is selected, and press the insert key. 2b. If you want to remove records, make sure a node is selected, and press the delete key. 3. Select a record from the list. There is a text box above it where you can enter an ID to go straight to that record. 4. The two text boxes above the 16 GUI entries on the right show the ID of the currently selected record, and the number of entries that will be processed by the client. 5. To change the number of entries that will be processed, click on the text box to the right with the drop-down arrow, and pick a number from the list. 6. To keep your changes, click on the Apply button. Note: This does not save the changes to the file. 7. To save the changes to a file, click on File -> Save... -> Save as LightIntBand.dbc -- There shouldn't be any bugs, as I've tested extensively. If any appear, please report them with as much detail as possible.
  20. Hey guys, i was wondering if this swap was possible and if anyone could give me a heads up on how to if it's possible. Cheers and thanks
  21. Hi! I´ve never had to do with game modding but the work of Finsternis and Uthil has given me something and i´m learning! So what am i trying to do? As the title says, i`m backporting weapons from BFA/Legion to Wotlk more or less successfully. What steps have i reached until now? 1. extracted .m2, .blp, .skin files, particle textures (found in the m2. file with 010 editor) from WOW data successfully 2. converted the .m2 file with aspartans m2 converter 3. (VARIANT 1) changed the names of the new .m2, .blp and .skin files to names of an old Weapon i found in itemdisplay.dbc. So an an old weapon was overwritten with the new weapon 4. packed everything in a custom mpq patch and added that patch to 3.3.5a data folder. 5. I use dmorph for wotlk ( https://darksectordds.github.io/ ) to display the Weapons on my character 6. Its working without any problems! So whats the matter? I dont wanna overwrite old Items with the new ones - (VARIANT 2) I want to add the new Weapons to the game without overwriting any items. So i extraced the item.dbc and itemdisplayinfo, added new ItemID`s, added the new Weapons with their original Names (also changed the m2, blp and skin files in my patch to that) and packed that in the patch. So everything works again, EXCEPT ONE THING: When the weapon is steathed on back or is held in hand its OK! But when i enter combat, its animated like my character fights unarmed. the Weapon is still shown on back and handheld but autoattacks are animated like unarmed "swings". Skill attacks, like Crusader Strike or Divine Storm animation use the Weapon as it should be, only autoattack animations are affected. So is there anything else to edit in the dbc files or anything else like that i have forgotten to do for Variant 2? M2 Files should be OK, because otherwise they won´t work in Variant 1 dbc files don´t contain swing animations as i know I Hope someone can help me, maybe then there´s gonna be a patch release one day with all Artifact weapons for wotlk Greetings Asystol EDIT: Renamed the title of that topic so ppl, who are looking for things like that (seen many forum entries searching for legion weapons and so on) have an easier way to find.
  22. Greetings To kick things off i want to say that ill be selling my work here that is locked behind paywall due to amount of time iv spend on it and I feel like i should get paid for it or the second case is that im selling work that someone commisioned me to do and if he paid some money for it im willing to sell it for exactly same amount to others as well unless the one who commision the work to me would say otherwise To buy the model click on PayPal button it will redirect you to CheckOut Site where you can buy the model after payment is done you will be redirected to Download site First item is Sylvanas Windrunner model from Heroes of the Storm ported to WoW This will be testing phase I will add other models later on when I get this system working correctly Price of this Commision was 40$= If you have any problems with buying stuff contanct me via PM or DM on my discord "A2#6767"
  23. Version 2

    165 downloads

    Hello there little whelps, I used to use patch made by one guy from Ownedcore which included all M2s and WMOs existing in WoW turned into spawnable gameobjects. That means that you can simply search for model name in game and you will always find gob you can spawn. Its just great thing for gob spammers, I know, but problem is that patch from Ownedcore is just horrible in my opinion. It contains a LOT of completely unneeded objects and displayIDs and also is full of displayIDs with messed up bounding boxes (all copied from one blizzlike one), which leads into gobs lootable from 50yd distances an another funny results. So I made my own patch. Here is MPQ patch, DBC file and SQL dump (for TrinityCore2 revisions after WDBVerified column was renamed to VerifiedBuild). I tryed to make this completely noob-friendly so if you want to use this patch, you don't need to know anything about MPQ patches or DBC files, you just need to know the very basics of running TrinityCore2 server. READ README file. You will find how-to guide there. All gobs with custom displayIDs have [AmPatch] placed behind their postfixes and have entrys 410000 and higher. Their displayIDs are 10000 and higher, meaning that every gob has displayID=entry-400000. Good for searching for displayIDs. Version 1 - light pack This version contains all M2s and WMOs from World and Spell folders as spawnable gameobjects. Others were excluded, because majority of them just can't be used as gobs (they have no hardcoded textures for example - they are white completely ingame). Version 2 - full pack This pack contains really ALL M2s, even character, item, creature... And its needless to say that most of such things are completely useless as gobs. But someone still may preffer this version. If you want to create your own gob patch, you may use my tool I've released. It doesn't give you possibility to filter which gobs you can use, but it works. You will want to use this tool if you are retro-porting models or creating custom ones (in general, if you want to have gobs made of models which are not in blizzlike WotLK client).
  24. This is my collection of five animated login screens with custom music. A random screen will be chosen each time you launch WoW. DOWNLOAD Features Five animated login screens with music that are chosen at random. Dead King’s Crypt The Tauren Chieftains Battle at the Dark Portal Arcadia Algalon the Observer You can adjust how often a specific screen appears by editing the random value range. I currenly have Dead King’s Crypt loading 60% of the time because it’s my favorite. If you want one screen to show every time, just set the rand = X where X is a number in the range of the screen you want in x_vars_init. Trivia These were created manually because the Mordred tool wasn’t compatible with my other login screen modifications, and I wasn’t interested in trying to make it compatible at the time. For some reason, no matter what I did, the bassist in the Tauren Chieftains would not position correctly, so I added a crate to the scene to make it appear like he had his foot on it. \m/ ---------- - StygianCore - My WoW Projects - GitHub
  25. Version 1.0.0

    484 downloads

    Hiya, Today I would like to share with you my mount patch containing at this point 45 mounts going from Cata to Legion retro-ported to Wrath of the lich king. I work on this patch from time to time so be sure to keep an eye out for newer versions. Happy Modding. Poisonleaf