Jump to content

Eden

Members
  • Posts

    37
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Posts posted by Eden

  1. not sure if its related to your problem, but i have noticed a bug with respawning spellcaster GOs (they just do not respawn or respawn randomly). anywy here is my fix for it, maybe it helps you (around line 380 in GameObject.cpp -- sorry i cant supply a .patch file right now):

                    case GO_JUST_DEACTIVATED:
                   {
                           //if Gameobject should cast spell, then this, but some GOs (type = 10) should be destroyed
                           if (GetGoType() == GAMEOBJECT_TYPE_GOOBER)
                           {
                                   uint32 spellId = GetGOInfo()->goober.spellId;
    
                                   if(spellId)
                                   {
                                           std::set<uint32>::iterator it = m_unique_users.begin();
                                           std::set<uint32>::iterator end = m_unique_users.end();
                                           for (; it != end; it++)
                                           {
                                                   Unit* owner = Unit::GetUnit(*this, uint64(*it));
                                                   if (owner) owner->CastSpell(owner, spellId, false);
                                           }
    
                                           m_unique_users.clear();
                                           m_usetimes = 0;
                                   }
                                   //any return here in case battleground traps
                           }
                           // -- SPELLCASTER RESPAWN FIX BELOW --
                           // FG: fix for proper respawning of charged spellcaster GOs
                           else if(GetGoType() == GAMEOBJECT_TYPE_SPELLCASTER)
                           {
                                   m_usetimes = 0;
                           }
                           // -- SPELLCASTER RESPAWN FIX ABOVE --
    
                           if(GetOwnerGUID())
                           {
                                   m_respawnTime = 0;
                                   Delete();
                                   return;
                           }

  2. anyway, the fact that the licence says that its not ALLOWED to connect doesnt mean that it shouldnt be POSSIBLE to connect wink.gif

    would be nice if you can post your patch, especially the CRC hash stuff. thx wink.gif

    all in all this is just educative; but its your sanity what you do with it.

    btw, pseuwow needs devs wink.gif

  3. just an else is missing here:

    Index: src/game/MotionMaster.cpp
    ===================================================================
    --- src/game/MotionMaster.cpp        (revision 6133)
    +++ src/game/MotionMaster.cpp        (working copy)
    @@ -145,7 +145,7 @@
                    DEBUG_LOG("Creature (Entry: %u GUID: %u) targeted home", i_owner->GetEntry(), i_owner->GetGUIDLow());
                    Mutate(new HomeMovementGenerator<Creature>());
            }
    -        if(i_owner->GetTypeId()==TYPEID_UNIT && ((Creature*)i_owner)->GetCharmerOrOwnerGUID())
    +        else if(i_owner->GetTypeId()==TYPEID_UNIT && ((Creature*)i_owner)->GetCharmerOrOwnerGUID())
            {
                    sLog.outError("Pet or controlled creature (Entry: %u GUID: %u) attempt targeted home", 
                            i_owner->GetEntry(), i_owner->GetGUIDLow() );

  4. <div class='quotetop'>QUOTE </div>

    No, we not need create multi-instance, just create one console based app with thousands sockets.[/b]

    that was exactly what i was talking about. with instance i mean 1 PseuInstance, which is the parent class of WorldSession/WorldSocket and RealmSession/RealmSocket. Creating many WorldSessions in one PseuInstance would kinda fuck up everything.

    Many PseuInstance's = many World connections.

  5. do you mean multi-instances in one pseuwow.exe?

    i have thought about that long ago, but actually never realized it. the code is somewhat optimized/intended for parallel usage of instances, but there are some pieces of code that are not yet "good" for multi-instancing:

    - the SCP database takes up too much memory if loaded 100 times or more

    - same for the item prototypes and playernames cache

    - also maps (omg!)

    - more then one DefScriptPackage instance would cause a large amount of used memory as well, because it is used to store individual configurations. one package must be loaded then for every single instance. there might be ways to get around this,

    it would require a 'Master' class, that, if running multi-instanced, took care about all data loaded only once and distributed to all PseuInstance's.

    - one gui per instance? or all instances all merged into one gui, tabbed? too early to decide that, and too hard to implement since its only the very beginning, and absolutely not needed for operation. better to disable gui in multi-instance mode.

    - CLI must be disabled too, or only enabled for first instance, or for all instances simultaneously.

    sure, your idea is good, but imho its too early to realize it.

    to do serious stressing, a lot more needs to be done before beeing able to get mangos cough. automated movement (i mean not depedant from the gui) is only one factor of it.

    i am interested to get more suggestions, and i would like to help mangos with it, but i also have a bad feeling about it, cuz it can be abused so easily...

    k, waiting for comments (or patches tongue.gif)

    EDIT: pseuwow is not a client EMUlator. remember, mangos devs kill u if u say this about mangos biggrin.gif

  6. the follow command was removed a looong time ago. but yeah, we are working on movement, but this needs 100% correct map reading code, which will still take a while until its done. for now concentrating on graphics, to make the debugging process easier.

    btw @ mods: am i allowed to post "client" screenshots here? tongue.gif i mean, this is not the payware client, so... wink.gif

  7. imo having something like an "official-educational" client for an educational mmorpg server that is just designed to be a SERVER, without any client, consolidates mangos' legality.

    i dont want to claim there is or will ever be an "official" mangos client, but having one, opensrc and gpl-licensed, kinda affliated to the mangos project (like ScriptDev2), makes a yet clientless server a whole thing. my 2 cents.

  8. thx for the suggestion to use irrlicht, but you are too late tongue.gif already using it smile.gif

    i'll move it to 2.0.x when i have time, but dont expect any major updates within the next 2 weeks.

    btw is anyone willing to help the project? (code/database/scripts development). write me a pm!

    helpers are really needed.

  9. never typed commands into mangos?

    if the text moves, just continue typing. when u press enter exactly what you have typed will be executed.

    you can also disable printing out all opcodes when you set the option "showopcodes" in the conf file to 0.

    basically all commands you type in the conf file are script commands that get executed (the .def files in ./scripts/ are script funtions).

    i think i'll update the documentation this weekend, if you have more questions, ask them, and i will add them to the Q&A smile.gif

  10. i already made my thought about the crc_hash, but thats not a priority imho. at least not yet.

    does it have sense to make a client able to connect to buzz when its not even yet able to suck all data? biggrin.gif

    just give it time wink.gif

    anyway, what worries me most is the CMSG_UPDATE_ACCOUNT packet that has to be sent... didnt find any documentation about that. if you really want a client to be able to act that buzz wont notice its a long road to go. as long as i have no docs about that specific packet, i cant continue on this.

    btw, any volunteers to help? some svn accs are still free wink.gif

  11. @ purplekarrot: i got no idea what you were talking about biggrin.gif i have no idea about gui programming (yet), even less about 3D tongue.gif.

    the reason why i want to use opengl only is the fact that it should run under linux someday, and d3d isnt rly runnable under linux (ok it is but only with wine). afaik there is no linux client wink.gif

×
×
  • 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