Jump to content

fredi

Members
  • Posts

    19
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by fredi

  1. The patch doesn't set 'online = 2', so you need to do it manually. You can create new accounts, create 10 random chars and set them 'online = 2'. Of course it needs much more work to implement KiriX ideas and maybe an automatic level + map changer. Also, you'll have to change your site's code to show 'online = 2' players as well. I think the basic idea is to show more players in the Who List for small servers just to try to maintain some new real players that check it. And yes, if they really want to check out, they can know that there are fake players or that is a bug, BUT, maybe they won't delete their char and look for another server.
  2. I made the patch to send fake players to the client only if clientcount < CONFIG_MAX_WHO. I just wanted the who list filled with 49 players at minimum.
  3. But if the original loop already sent the real online players to the client I really don't see a reason to send them again.
  4. Hi, thanks for the reply! The reason is that I didn't remove any original code, so the HashMapHolder loop sends the real online players and then I added another one to send fake online players only if there is less then 49 real online players. I tested and it worked just fine. Thanks!
  5. Can someone test this? This new version prevents the server from sending "no player xxx currently online" to the sender. diff -r 30d2a0da9458 src/server/game/Server/Protocol/Handlers/ChatHandler.cpp --- a/src/server/game/Server/Protocol/Handlers/ChatHandler.cpp Tue Jul 27 14:44:40 2010 -0300 +++ b/src/server/game/Server/Protocol/Handlers/ChatHandler.cpp Thu Jul 29 19:55:28 2010 -0300 @@ -248,7 +248,9 @@ uint32 pSecurity = player ? player->GetSession()->GetSecurity() : SEC_PLAYER; if (!player || (tSecurity <= SEC_VIP && pSecurity > SEC_VIP && !player->isAcceptWhispers())) { - SendPlayerNotFoundNotice(to); + QueryResult_AutoPtr result = CharacterDatabase.PQuery("SELECT guid FROM characters WHERE name = '%s' AND online = 2", to.c_str()); + if (!result) + SendPlayerNotFoundNotice(to); return; } diff -r 30d2a0da9458 src/server/game/Server/Protocol/Handlers/MiscHandler.cpp --- a/src/server/game/Server/Protocol/Handlers/MiscHandler.cpp Tue Jul 27 14:44:40 2010 -0300 +++ b/src/server/game/Server/Protocol/Handlers/MiscHandler.cpp Thu Jul 29 19:55:28 2010 -0300 @@ -340,6 +340,37 @@ break; } + if (clientcount < sWorld.getConfig(CONFIG_MAX_WHO)) + { + // Fake players 0, 1, 2, 3, 4, 5 + QueryResult_AutoPtr result = CharacterDatabase.Query("SELECT guid,name,race,class,level,zone FROM characters WHERE online = 2"); + if (result) + { + do + { + Field *fields = result->Fetch(); + + std::string pname = fields[1].GetCppString(); + std::string gname; + uint8 lvl = fields[4].GetUInt32(); + uint32 class_ = fields[3].GetUInt32(); + uint32 race = fields[2].GetUInt32(); + uint32 pzoneid = fields[5].GetUInt32(); + + data << pname; // player name + data << gname; // guild name + data << uint32(lvl); // player level + data << uint32(class_); // player class + data << uint32(race); // player race + data << uint8(0); // new 2.4.0 + data << uint32(pzoneid); // player zone id + + if ((++clientcount) == sWorld.getConfig(CONFIG_MAX_WHO)) + break; + } while (result->NextRow()); + } + } + uint32 count = m.size(); data.put( 0, clientcount ); // insert right count, listed count data.put( 4, count > 50 ? count : clientcount ); // insert right count, online count
  6. Well.. Check out what I got. diff -r ed1c46f19079 src/server/game/Server/Protocol/Handlers/MiscHandler.cpp --- a/src/server/game/Server/Protocol/Handlers/MiscHandler.cpp Thu Jul 29 11:15:09 2010 -0300 +++ b/src/server/game/Server/Protocol/Handlers/MiscHandler.cpp Thu Jul 29 16:55:30 2010 -0300 @@ -340,6 +340,37 @@ break; } + if (clientcount < sWorld.getConfig(CONFIG_MAX_WHO)) + { + // Fake players 0, 1, 2, 3, 4, 5 + QueryResult_AutoPtr result = CharacterDatabase.Query("SELECT guid,name,race,class,level,zone FROM characters WHERE online = 2"); + if (result) + { + do + { + Field *fields = result->Fetch(); + + std::string pname = fields[1].GetCppString(); + std::string gname; + uint8 lvl = fields[4].GetUInt32(); + uint32 class_ = fields[3].GetUInt32(); + uint32 race = fields[2].GetUInt32(); + uint32 pzoneid = fields[5].GetUInt32(); + + data << pname; // player name + data << gname; // guild name + data << uint32(lvl); // player level + data << uint32(class_); // player class + data << uint32(race); // player race + data << uint8(0); // new 2.4.0 + data << uint32(pzoneid); // player zone id + + if ((++clientcount) == sWorld.getConfig(CONFIG_MAX_WHO)) + break; + } while (result->NextRow()); + } + } + uint32 count = m.size(); data.put( 0, clientcount ); // insert right count, listed count data.put( 4, count > 50 ? count : clientcount ); // insert right count, online count You need to create some chars and set online = 2;
  7. 9061 SD2 1523 YTDB R524 Heisei 1.1.2 Aura 262 patch AHBot DualSpec Anticheat and some insider's commits Thanks! Using host libthread_db library "/lib/libthread_db.so.1". Core was generated by `./bin/mangos-worldd'. Program terminated with signal 6, Aborted. #0 0x00002b4cdf96b07b in raise () from /lib/libc.so.6 #0 0x00002b4cdf96b07b in raise () from /lib/libc.so.6 No symbol table info available. #1 0x00002b4cdf96c84e in abort () from /lib/libc.so.6 No symbol table info available. #2 0x00002b4cdf964af4 in __assert_fail () from /lib/libc.so.6 No symbol table info available. #3 0x00000000008c412e in TypeUnorderedMapContainer<TypeList<Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > >, unsigned long>::insert<GameObject> (elements=@0x2aaabe12a010, handle=17370386786827658664, obj=0x2aaaca99e580) at ../../../src/game/../framework/GameSystem/TypeContainer.h:78 i = {_M_cur = 0x2aaacc945e00, _M_ht = 0x2aaabe12a010} __PRETTY_FUNCTION__ = "static bool TypeUnorderedMapContainer<OBJECT_TYPES, KEY_TYPE>::insert(ContainerUnorderedMap<SPECIFIC_TYPE, KEY_TYPE>&, KEY_TYPE, SPECIFIC_TYPE*) [with SPECIFIC_TYPE = GameObject, OBJECT_TYPES = TypeLi"... #4 0x00000000008c4159 in TypeUnorderedMapContainer<TypeList<Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > >, unsigned long>::insert<GameObject, GameObject, TypeList<DynamicObject, TypeNull> > (elements=@0x2aaabe12a010, handle=17370386786827658664, obj=0x2aaaca99e580) at ../../../src/game/../framework/GameSystem/TypeContainer.h:92 ret = false #5 0x00000000008c41d8 in TypeUnorderedMapContainer<TypeList<Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > >, unsigned long>::insert<GameObject, Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > (elements=@0x2aaabe129fe8, handle=17370386786827658664, obj=0x2aaaca99e580) at ../../../src/game/../framework/GameSystem/TypeContainer.h:93 ret = false #6 0x00000000008c4230 in TypeUnorderedMapContainer<TypeList<Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > >, unsigned long>::insert<GameObject, Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > (elements=@0x2aaabe129fc0, handle=17370386786827658664, obj=0x2aaaca99e580) at ../../../src/game/../framework/GameSystem/TypeContainer.h:93 ret = false #7 0x00000000008c4288 in TypeUnorderedMapContainer<TypeList<Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > >, unsigned long>::insert<GameObject, Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > > (elements=@0x2aaabe129f98, handle=17370386786827658664, obj=0x2aaaca99e580) at ../../../src/game/../framework/GameSystem/TypeContainer.h:93 ret = false #8 0x00000000008c42b9 in TypeUnorderedMapContainer<TypeList<Creature, TypeList<Pet, TypeList<Vehicle, TypeList<GameObject, TypeList<DynamicObject, TypeNull> > > > >, unsigned long>::insert<GameObject> (this=0x2aaabe129f98, handle=17370386786827658664, obj=0x2aaaca99e580) at ../../../src/game/../framework/GameSystem/TypeContainer.h:53 No locals. #9 0x00000000008c0280 in GameObject::AddToWorld (this=0x2aaaca99e580) at ../../../src/game/GameObject.cpp:69 No locals. #10 0x000000000098127a in Map::Add<GameObject> (this=0x2aaabe129e50, obj=0x2aaaca99e580) at ../../../src/game/Map.cpp:477 p = {x_coord = 65, y_coord = 258} cell = {data = {Part = {grid_x = 8, grid_y = 32, cell_x = 1, cell_y = 2, nocreate = 0, reserved = 0}, All = 530440}} grid = ( NGrid<8u,Player,TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > >,TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > >,MaNGOS::SingleThreaded<Player> > *) 0x2aaac0fe4680 __PRETTY_FUNCTION__ = "void Map::Add(T*) [with T = GameObject]" #11 0x00000000008adefd in GameEventMgr::GameEventSpawn (this=0x2aaab295cd90, event_id=15) at ../../../src/game/GameEventMgr.cpp:570 pGameobject = (class GameObject *) 0x2aaaca99e580 map = (class Map *) 0x2aaabe129e50 data = (const GameObjectData *) 0x2aaabcc3bdac itr = {_M_node = 0x2aaab2bd5dc0} internal_event_id = 59 #12 0x00000000008ae211 in GameEventMgr::ApplyNewEvent (this=0x2aaab295cd90, event_id=15) at ../../../src/game/GameEventMgr.cpp:495 event_nid = 0 #13 0x00000000008afc40 in GameEventMgr::StartEvent (this=0x2aaab295cd90, event_id=15, overwrite=false) at ../../../src/game/GameEventMgr.cpp:72 No locals. #14 0x00000000008afd44 in GameEventMgr::Update (this=0x2aaab295cd90) at ../../../src/game/GameEventMgr.cpp:440 itr = 15 nextEventDelay = 6599 calcDelay = 6599 #15 0x0000000000b990a0 in World::Update (this=0x103f8c0, diff=52) at ../../../src/game/World.cpp:1705 nextGameEvent = 0 autobroadcaston = 1 #16 0x00000000007ea23f in WorldRunnable::run (this=0x2aaab2b12450) at ../../../src/mangosd/WorldRunnable.cpp:60 diff = 52 realCurrTime = 3504183476 realPrevTime = 3504183424 prevSleepTime = 45 #17 0x0000000000c5df8a in ACE_Based::Thread::ThreadTask (param=0x2aaab2b12450) at ../../../src/shared/Threading.cpp:183 _task = (class ACE_Based::Runnable *) 0x2aaab2b12450 #18 0x00002b4cdf39ef1a in start_thread () from /lib/libpthread.so.0 No symbol table info available. #19 0x00002b4cdfa055d2 in clone () from /lib/libc.so.6 No symbol table info available. #20 0x0000000000000000 in ?? () No symbol table info available.
  8. 9049 SD2 1523 YTDB R524 Heisei 1.1.2 Thanks! Using host libthread_db library "/lib/libthread_db.so.1". Core was generated by `./bin/mangos-worldd'. Program terminated with signal 11, Segmentation fault. #0 0x0000000000000000 in ?? () #0 0x0000000000000000 in ?? () No symbol table info available. #1 0x0000000000c29b86 in WorldSession::HandleCastSpellOpcode (this=0x7f98390, recvPacket=@0x2aaabf826a00) at ../../../src/game/SpellHandler.cpp:323 spellId = 6197 cast_count = 160 ' ' unk_flags = 0 '\\0' mover = (class Unit *) 0x2aaad1ad04b0 spellInfo = (const SpellEntry *) 0x2aaaae9b7db0 targets = {m_srcX = 3.75434896e-34, m_srcY = 0, m_srcZ = 3.75433427e-34, m_destX = 0, m_destY = 32.0457764, m_destZ = 0, m_strTarget = {static npos = 18446744073709551615, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x7e5f6d "ÉÃ\\220UH\\211åH\\203ì\\020H\\211}øH\\213}øH\\203Ç\\bèÏÿÿÿÉÃ\\220UH\\211åH\\203ì\\020H\\211}øH\\211uðH\\213}øèñøÿÿH\\213}øH\\203Ç8H\\213uðè$ÿÿÿH\\213}øè±ÿÿÿÉÃ\\220UH\\211åSH\\203ì8H\\211}àH\\211uØH\\211Uп\\020"}}, m_targetMask = 133792992, m_unitTarget = 0x7f984b0, m_GOTarget = 0x42002f00, m_itemTarget = 0xba43e6, m_unitTargetGUID = 3249798232, m_GOTargetGUID = 1107308368, m_CorpseTargetGUID = 1107308320, m_itemTargetGUID = 12207107, m_itemTargetEntry = 3249798512} spell = (Spell *) 0x42003038 #2 0x0000000000ba9510 in WorldSession::Update (this=0x7f98390) at ../../../src/game/WorldSession.cpp:186 opHandle = (OpcodeHandler &) @0xfcc440: { name = 0xd230da "CMSG_CAST_SPELL", status = STATUS_LOGGEDIN, handler = { __pfn = 0xc29976 <WorldSession::HandleCastSpellOpcode(WorldPacket&)>, __delta = 0}} packet = (WorldPacket *) 0x2aaabf826a00 currTime = 1107308640 #3 0x0000000000b98a7a in World::UpdateSessions (this=0x103c850, diff=57) at ../../../src/game/World.cpp:2097 itr = {_M_cur = 0x2aaad440ed30, _M_ht = 0x103c920} next = {_M_cur = 0x20e3690, _M_ht = 0x103c920} sess = (WorldSession *) 0x103c850 #4 0x0000000000b98ca7 in World::Update (this=0x103c850, diff=57) at ../../../src/game/World.cpp:1640 autobroadcaston = 1 #5 0x00000000007ea23f in WorldRunnable::run (this=0x2aaabd491820) at ../../../src/mangosd/WorldRunnable.cpp:60 diff = 57 realCurrTime = 3284230486 realPrevTime = 3284230429 prevSleepTime = 42 #6 0x0000000000c5ddca in ACE_Based::Thread::ThreadTask (param=0x2aaabd491820) at ../../../src/shared/Threading.cpp:183 _task = (class ACE_Based::Runnable *) 0x2aaabd491820 #7 0x00002b23df0aef1a in start_thread () from /lib/libpthread.so.0 No symbol table info available. #8 0x00002b23df7155d2 in clone () from /lib/libc.so.6 No symbol table info available. #9 0x0000000000000000 in ?? () No symbol table info available.
  9. 9049 SD2 1523 YTDB R524 Heisei 1.1.2 Thanks! Using host libthread_db library "/lib/libthread_db.so.1". Core was generated by `./bin/mangos-worldd'. Program terminated with signal 11, Segmentation fault. #0 0x00002b3ee05a21ce in free () from /lib/libc.so.6 #0 0x00002b3ee05a21ce in free () from /lib/libc.so.6 No symbol table info available. #1 0x0000000000ad3ab1 in __gnu_cxx::new_allocator<std::_List_node<Aura*> >::Deallocate (this=0x858eee0, __p=0x858ee01) at /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../include/c++/4.1.2/ext/new_allocator.h:94 No locals. #2 0x0000000000ad3ad9 in std::_List_base<Aura*, std::allocator<Aura*> >::_M_put_node (this=0x858eee0, __p=0x858ee01) at /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_list.h:320 No locals. #3 0x0000000000b81a1e in std::_List_base<Aura*, std::allocator<Aura*> >::_M_clear (this=0x858eee0) at /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/list.tcc:78 __tmp = (class std::_List_node<Aura*> *) 0x858ee01 __cur = (class std::_List_node<Aura*> *) 0x8000000000858ed #4 0x0000000000b81a68 in ~_List_base (this=0x858eee0) at /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_list.h:339 No locals. #5 0x0000000000b81abd in ~list (this=0x858eee0) at /usr/lib/gcc/x86_64-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_list.h:399 No locals. #6 0x0000000000b7bed6 in ~Unit (this=0x858eb70) at ../../../src/game/Unit.cpp:180 No locals. #7 0x0000000000860bac in ~Creature (this=0x858eb70) at ../../../src/game/Creature.cpp:140 No locals. #8 0x00000000009a3cff in ObjectGridUnloader::Visit<Creature> ( this=0x42002d80, m=@0xddfc070) at ../../../src/game/ObjectGridLoader.cpp:274 obj = (class Creature *) 0x858eb70 #9 0x00000000009a3d37 in VisitorHelper<ObjectGridUnloader, Creature> ( v=@0x42002d80, c=@0xddfc070) at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:64 No locals. #10 0x00000000009a3ecf in VisitorHelper<ObjectGridUnloader, Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > (v=@0x42002d80, c=@0xddfc070) at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:70 No locals. #11 0x00000000009a3f10 in VisitorHelper<ObjectGridUnloader, GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > ( v=@0x42002d80, c=@0xddfc040) at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:71 No locals. #12 0x00000000009a3f37 in VisitorHelper<ObjectGridUnloader, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > > (v=@0x42002d80, c=@0xddfc040) at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:94 No locals. #13 0x00000000009a3f5a in TypeContainerVisitor<ObjectGridUnloader, TypeMapContainer<TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > > >::Visit (this=0x42002cc0, c=@0xddfc040) at ../../../src/game/../framework/GameSystem/TypeContainerVisitor.h:105 No locals. #14 0x00000000009a3f79 in Grid<Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > >, MaNGOS::SingleThreaded<Player> >::Visit<ObjectGridUnloader> (this=0xddfc040, visitor=@0x42002cc0) at ../../../src/game/../framework/GameSystem/Grid.h:94 No locals. #15 0x00000000009a1a8a in ObjectGridUnloader::Unload (this=0x42002d80, grid=@0xddfc040) at ../../../src/game/ObjectGridLoader.cpp:254 unloader = {i_visitor = @0x42002d80} #16 0x000000000097a732 in GridLoader<Player, TypeList<Player, TypeList<Creature, TypeList<Corpse, TypeNull> > >, TypeList<GameObject, TypeList<Creature, TypeList<DynamicObject, TypeList<Corpse, TypeNull> > > > >::Unload<ObjectGridUnloader> (this=0x42002d27, grid=@0xddfc040, unloader=@0x42002d80) at ../../../src/game/../framework/GameSystem/GridLoader.h:72 No locals. #17 0x000000000097a784 in ObjectGridUnloader::UnloadN (this=0x42002d80) at ../../../src/game/ObjectGridLoader.h:70 loader = {<No data fields>} y = 5 x = 5 #18 0x0000000000955086 in Map::UnloadGrid (this=0x1598be0, x=@0x42002ff4, y=@0x42002ff0, pForce=false) at ../../../src/game/Map.cpp:1088 unloader = {i_grid = @0xddf79a0} grid = (NGridType *) 0xddf79a0 gx = 12592567 gy = 0 __PRETTY_FUNCTION__ = "bool Map::UnloadGrid(const uint32&, const uint32&, bool)" #19 0x0000000000c0239b in RemovalState::Update (this=0x1968230, m=@0x1598be0, grid=@0xddf79a0, info=@0xddf79a8, x=@0x42002ff4, y=@0x42002ff0, t_diff=@0x420030bc) at ../../../src/game/GridStates.cpp:65 No locals. #20 0x000000000095bbc9 in Map::Update (this=0x1598be0, t_diff=@0x420030bc) at ../../../src/game/Map.cpp:714 grid = (NGridType *) 0xddf79a0 info = (GridInfo *) 0xddf79a8 i = {_Ptr = 0x2aaabf945558} updater = {i_timeDiff = 144} grid_object_update = {i_visitor = @0x42002f80} world_object_update = {i_visitor = @0x42002f80} __PRETTY_FUNCTION__ = "virtual void Map::Update(const uint32&)" #21 0x0000000000982897 in MapManager::Update (this=0x2aaab316d6c0, diff=48) at ../../../src/game/MapManager.cpp:265 iter = {_M_cur = 0x1967970, _M_ht = 0x2aaab316d748} #22 0x0000000000b98e7d in World::Update (this=0x103e920, diff=48) at ../../../src/game/World.cpp:1679 autobroadcaston = 1 #23 0x00000000007ea23f in WorldRunnable::run (this=0x17f0150) at ../../../src/mangosd/WorldRunnable.cpp:60 diff = 48 realCurrTime = 3197356274 realPrevTime = 3197356226 prevSleepTime = 45 #24 0x0000000000c5ddca in ACE_Based::Thread::ThreadTask (param=0x17f0150) at ../../../src/shared/Threading.cpp:183 _task = (class ACE_Based::Runnable *) 0x17f0150 #25 0x00002b3edff98f1a in start_thread () from /lib/libpthread.so.0 No symbol table info available. #26 0x00002b3ee05ff5d2 in clone () from /lib/libc.so.6 No symbol table info available. #27 0x0000000000000000 in ?? () No symbol table info available.
  10. fredi

    Death Bug

    my friend was testing a mage and told me that he was casting a spell and died before finishing the cast and got the bug.
  11. This patch adds a command to send a mail with money to a player. I did it because sometimes I want to send some gold to my friends and if they are offline I had to go to a mailbox. Also, you can make a php script connect to the server by Remote Access and execute the command in your page's admin area. Well, in fact I'm just sharing because it can be useful to someone. Download: http://filebeam.com/b2a55894e64ba1c0208f20367bb541d1 Don't forget to import the sql file in mangos database: sql/updates/sendmoney/sendmoney.sql Usage: .sendmoney #player "subject" "text" #money So, if you want to send 1 gold to someone: .sendmoney someone "gold" "here it is" 10000 Feedbacks are welcome! Hope you like it.
  12. If you use the second option you will not be able to update the branch with "git pull" because there is no remote added. git remote add -t 303-willcrashforsure -m master origin git://github.com/mangos/mangos.git It will add the remote tracking the branch 303-willcrashforsure and pointing it to your master branch.
  13. Hi! Try this commands from where you cloned mangos: git checkout -b 303-willcrashforsure git pull git://github.com/mangos/mangos.git 303-willcrashforsure The checkout will create the branch and the second command will pull just the branch you want. Or you can simply make a new directory and execute these comands inside it: git init git pull git://github.com/mangos/mangos.git 303-willcrashforsure
  14. Hi! Try this commands from where you cloned mangos: git checkout -b 303-willcrashforsure git pull git://github.com/mangos/mangos.git 303-willcrashforsure The checkout will create the branch and the second command will pull just the branch you want.
  15. Try this before creating the patch: git add . git commit -a -m "my commit" The first command will add the new files you added. The second command will commit all your changes. Now you can create the patch.
  16. Hi! I posted the link of the git patch in the first post.
  17. Hi! I found this patch at the old forum and it's very nice, so I made some changes and I pushed it in a branch so you can pull it if you want. The patch is very useful to auto broadcast messages in an interval of time, like server announcements, etc. To install you can use an existing branch in your local repo or just create one: git checkout -b autobroadcast Then pull my remote branch there: git pull git://github.com/fredi/mangos.git autobroadcast Import the sql required: sql/updates/autobroadcast/autobroadcast.sql That's it! Now you can compile or merge with your branch, etc... GIT PATCH on pastebin: http://pastebin.ca/1235358 The original code of the patch isn't mine, so I would like to thank the creator.
  18. Cheers!! I was wondering about what editor do you use to develop MaNGOS, cause I use Geany and vim but I really think there is a better way to maintain the project. I didn't code too much in linux so I am more used to M$VC where you open the .vcproj or the .sln to load the entire project. Btw, MaNGOS is an excellent project, so congratulations to everyone involved! Thanks in advance!
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use