Jump to content

adriann54

Members
  • Posts

    27
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Posts posted by adriann54

  1. I tried to disable PvP in Dalaran ( which I think is a Sanctuary Area ), but I couldn't manage to disable it.

    Original Player.cpp:

    if(zone->flags & AREA_FLAG_SANCTUARY)                   // in sanctuary
       {
           SetByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_SANCTUARY);
           if(sWorld.IsFFAPvPRealm())
               SetFFAPvP(false);
       }
    

    Edited Player.cpp

    if(zone->flags & AREA_FLAG_SANCTUARY)                   // in sanctuary
       {
           SetByteFlag(UNIT_FIELD_BYTES_2, 1, UNIT_BYTE2_FLAG_SANCTUARY);
           if(sWorld.IsFFAPvPRealm())
               SetFFAPvP(false);
           pvpInfo.endTimer = time(0);
       }
    

    I also added : UpdatePvP(false);

  2. Hi everybody,

    I had the idea of using an E-Mail adress as loginname. For example "[email protected]" instead of "admin." So I changed the entry on mysql from "admin" to "[email protected]." Data was entered correctly. But when I try to log ingame, it does not work. So I think I gotta change something inside the core. Well I never touched C++, only Java B) . So I ask you: What do I have to change inside the core?

    I took a look at the core (0 c++ skill), and I've found a method (Hope it's called like that in c++ too) in "AccountMgr.cpp" which is called "normalizeString". Does this method avoid the use of e-mail adresses as loginname?

    Greetings :)

    Have you encrypted again your email.password with SHA1 ?

  3. @adriann54 maybe fsockopen() is trying to connect to the port on UDP, which would return true/online even when it's offline (because UDP is connectionless)

    Try specifying the Transport Protocol as TCP manually and see what happens

    $fp = fsockopen("[b]tcp://[/b]127.0.0.1","8085", $enumber, $evalue, 1)

    BTW when fsockopen() connects with UDP on an invalid port number, no errors are thrown and appears online even the the port is higher than 65535, so I really think this may be your issue.. although this is the first time i've seen/heard of fsockopen using UDP by default instead of TCP

    Here's some expanded server checking code, its only a base example and can be altered to look pretty by someone with basic php/html knowledge

    <?php
    // BEGIN User Defined Variables
    $locales = array(
     'enUS' => array(
       'OK' => "Accepting Connections",
       'TIMEOUT' => "Operation Timed Out",
       'REFUSED' => "Connection Refused",
       'PORTLIMIT' => "Can't Assign Requested Address"
     ),
     // Other languages would go here if desired
    );
    
    $use_locale = 'enUS';
    $timeout = 1; // If testing a connection across the WAN, increase this value
    
    // $servers Structure "IP address","Port","Description"
    $servers = array(
     array("tcp://127.0.0.1","8085","mangosd"),  // MaNGOS mangosd
     array("tcp://127.0.0.1","3724","realmd"),  // MaNGOS realmd
     array("tcp://127.0.0.1","7878","RA Console"),  // MaNGOS RA console
     array("tcp://127.0.0.1","3443","SOAP"),  // MaNGOS SOAP
     array("tcp://127.0.0.1","80","Apache"),    // Webserver apache
     array("tcp://127.0.0.1","3306","MySQL"),  // Database mysql
    );
    
    $be_verbose = false;
    // END User Defined Variables
    
    $errno = NULL;
    $errstr = NULL;
    
    foreach($servers as $value){
     $fp = @fsockopen($value[0],$value[1],$errno,$errstr,1);
     if($fp!==FALSE){
       fclose($fp);
     }
     echo $value[2] . " - ";
     if($be_verbose===true){
       echo $value[0] . ":" . $value[1] . " - ";
     }
     switch($errno){
       case 0:
         echo $locales[$use_locale]['OK'];
       break;
       case 49:
         echo $locales[$use_locale]['PORTLIMIT'];
       break;
       case 60:
         echo $locales[$use_locale]['TIMEOUT'];
       break;
       case 61:
         echo $locales[$use_locale]['REFUSED'];
       break;
     }
     echo "
    \\n";
     if($be_verbose===true && $errno!==0){
       echo "(" . $errno . ") " . $errstr . "
    \\n";  //Be verbose about errors, set $be_verbose to false to disable, true to enable
     }
    }
    ?>

    Thank you for your response.

    I tried your script on my server and all services were online even if there were for real offline.

    Then I tried this script on a free webhosting service and I put my ip.

    The Result :

    mangosd - Operation Timed Out (Turned Off)
    realmd - Accepting Connections
    RA Console - Operation Timed Out
    SOAP - Operation Timed Out
    Apache - Accepting Connections
    MySQL - Operation Timed Out (No Remote Access)
    

    So I guess, is my server fold.

    I will reinstall it.

  4. I started to learn C++ and I know a little bit.

    Is there any kind of tutorial on how to code this thing?

    For Example :

    if (!caster || caster->GetTypeId() != TYPEID_PLAYER)
    return;
    

    What of these things are doing?

    ( if isn't any caster or caster is not a player then return ? )

  5. ok removes "@" and paste here the error

    There's no error.

    The script just keep sayin that the server is always online, no matter what port I am using or if the server is online or offline.

    <?php
    if(($fp = fsockopen("my_ip","8085", $enumber, $evalue, 1)) !== FALSE){
    echo "Online";
    fclose($fp);
    }else{
    echo "Offline";
    }
    echo "
    
    Enumber:".$enumber."
    
    Evalue:".$evalue;
    ?>
    

    Output

    Online
    
    Enumber:0
    
    Evalue:
    

  6. Hi guys,

    When I started my mangos-worldd I'm presented with this message:

    SQL: SELECT MAX(id) FROM auction

    query ERROR: Table 'characters.auction' doesn't exist

    Now, I am not sure if this is critical, I assume this table is used to store auctions (items, etc). Is anyone else getting this issue, I just grabbed the latest Mangos code about an hour ago and recompiled my binaries.

    MaNGOS/0.17.0 (* * Revision 10279 - *) for Linux_x64 (little-endian) [world-daemon]

    I've grepped through all the SQL updates and not one of them mentions adding or even modifying a table 'characters.auction'.

    Is it alright if this fails, or did I miss some SQL update somewhere?

    Much appreciated for the help! <3

    I would recommend you to reinstall your characters database. But however if you don't want to lose all of your data apply this query to your characters database :

    DROP TABLE IF EXISTS `auction`;
    
    CREATE TABLE `auction` (
     `id` int(11) unsigned NOT NULL DEFAULT '0',
     `houseid` int(11) unsigned NOT NULL DEFAULT '0',
     `itemguid` int(11) unsigned NOT NULL DEFAULT '0',
     `item_template` int(11) unsigned NOT NULL DEFAULT '0' COMMENT 'Item Identifier',
     `itemowner` int(11) unsigned NOT NULL DEFAULT '0',
     `buyoutprice` int(11) NOT NULL DEFAULT '0',
     `time` bigint(40) NOT NULL DEFAULT '0',
     `buyguid` int(11) unsigned NOT NULL DEFAULT '0',
     `lastbid` int(11) NOT NULL DEFAULT '0',
     `startbid` int(11) NOT NULL DEFAULT '0',
     `deposit` int(11) NOT NULL DEFAULT '0',
     PRIMARY KEY (`id`),
     UNIQUE KEY `item_guid` (`itemguid`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    

  7. as I know, the script for npc_eye_of_acherus in file ebon_hold.cpp in ScriptDev2

    do the all work for the eye to fly to the New Avalon village and to stay in the air.

    Maybe something is not patching is well, check the script in ebon_hold.cpp

    and check in table creature_template for npc 28511, in column ScriptName must have: npc_eye_of_acherus

    and finally clear Game's cache. I wish you luck :)

    I patched again my ScriptDev2, now is working.

    Thank you for your time :)

  8. maybe You forgot to patch ScriptDev2 with eye_sd2.patch?

    for me works with both databases: unifieddb_392 or ytdbase_R334_FIX(557).

    Edit:

    previous patch removed spell data for gobject 'Eye of Acherus Control Mechanism'

    and If You do not use fresh new database, then you needs from this:

    UPDATE gameobject_template SET data10 = 51888 WHERE entry = 191609;
    

    Yes I also patched the scriptdev2.

    And added your sql to my world db.

    I can take eye of archeus but it cannot fly. I keep falling with it.

  9. Just mixing the new with the old patch and it works,

    but do not thank me because this is a collection of hacks and anyone can do it.

    take it, Eye of Acherus patch for MaNGOS rev.[10254]

    from here: http://filebeam.com/8cea39a42263bd09b9fcc99cb15481f1

    Note:

    and this is necessary only, if You use the vehicle patch too:

    UPDATE creature_template SET InhabitType = 3 WHERE entry = 28511;
    

    Edit:

    removed part of the patch in exactly for: MovementHandler.cpp

    added better script for npc_eye_of_acherus in exactly for: void JustDied(Unit*u)

    take it, Eye of Acherus patch for MaNGOS rev.[10271]

    http://filebeam.com/dcef9fa986d77b162aaff18f12ef9f08

    It didn't work for me...

    Installed patches, compiled, and run the sql to world db but still not working.

  10. Hello...

    I didn't know where it will be the right place where I can start this thread so I started it here "Developer's Corner".

    I tried to make an registration page for mangos and it ended up with an error, now I'm blocked and I don't know where is the problem.

    <?php
    $db_user    = "root"; // MySQL username
    $db_pass    = "my_password"; // MySQL password
    $db_host    = "localhost"; // MySQL Server Host
    $db_db      = "mangos_logon"; // Account database
    
    if($_POST)
    {
    $con = mysql_connect($db_host,$db_user,$db_pass);
    if(!$con)
    $msg = "Unable to create a Database connection.";
    if($con)
    {
    mysql_select_db($db_db, $con);
    $user = $_POST['login'];
    $pass = $_POST['password'];
    $email = $_POST['email'];
    $pack = $_POST['expansion'];
    function sha_password($user,$pass){
    $user = strtoupper($user);
    $pass = strtoupper($pass);
    return SHA1($user.':'.$pass);
    }
    $sha=sha_password($user,$pass);
    
    if(!$user)
    echo "You have not inserted your username.";
    else if(!$pass)
    echo "You have not inserted your password.";
    else if(!$email)
    echo "You have not inserted your e-mail";
    else
    {
    
    
    
    $check = mysql_query("SELECT username FROM account WHERE username=\\"".$user."\\" LIMIT 1", $con);
    if(mysql_numrows($check) > 0)
    echo "Account ".$user." already exists. Please Try Again";
    else
    {
    $query = "INSERT INTO account (username, sha_pass_hash, email, expansion) VALUES
    ('" . mysql_real_escape_string($user) . "', '" . mysql_real_escape_string($sha) . "', '" . mysql_real_escape_string($email) . "', '" . mysql_real_escape_string($pack) . "');";
    
    if(!mysql_query($query, $con))
    echo "Creation of account ".$user." has failed. Please try again later.";
    else
    echo "Account ".$user." has been created.";
    }
    }
    @mysql_close($con);
    }
    
    }
    
    ?>

    It ends up with this error :

    Code Format

    echo "Creation of account ".$user." has failed. Please try again later.";

    Browser Format

    Creation of account test_user has failed. Please try again later.

  11. Hey...I got an error when I start MaNGOSD.exe

    2009-07-19 23:30:32 Loading Loot Tables...
    2009-07-19 23:30:32 
    2009-07-19 23:30:32 creature_loot_template :
    2009-07-19 23:30:32 
    2009-07-19 23:30:32 >> Loaded 1 loot definitions (1 templates)
    2009-07-19 23:30:32 ERROR:Table 'creature_loot_template' entry 80000 isn't creature entry and not referenced from loot, and then useless.

    It says that 80000 is not a creature entry but in creature_template I have this creature :

    insert into `creature_template` (`entry`, `heroic_entry`, `unk1`, `unk2`, `modelid_A`, `modelid_A2`, `modelid_H`, `modelid_H2`, `name`, `subname`, `IconName`, `minlevel`, `maxlevel`, `minhealth`, `maxhealth`, `minmana`, `maxmana`, `armor`, `faction_A`, `faction_H`, `npcflag`, `speed`, `scale`, `rank`, `mindmg`, `maxdmg`, `dmgschool`, `attackpower`, `dmg_multiplier`, `baseattacktime`, `rangeattacktime`, `unit_class`, `unit_flags`, `dynamicflags`, `family`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `minrangedmg`, `maxrangedmg`, `rangedattackpower`, `type`, `type_flags`, `lootid`, `pickpocketloot`, `skinloot`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `spell1`, `spell2`, `spell3`, `spell4`, `PetSpellDataId`, `mingold`, `maxgold`, `AIName`, `MovementType`, `InhabitType`, `unk16`, `unk17`, `RacialLeader`, `questItem1`, `questItem2`, `questItem3`, `questItem4`, `movementId`, `RegenHealth`, `equipment_id`, `mechanic_immune_mask`, `flags_extra`, `ScriptName`) values('80000','0','0','0','304','304','304','304','Chicken','',NULL,'3','5','500','500','100','100','100','7','7','0','8','1','0','100','200','0','10','1','2500','0','0','0','0','0','0','0','0','0','0','0','0','7','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','10000','10000','','0','3','1','1','0','0','0','0','0','0','1','0','0','0','');
    
    

    While I am playing I can spawn this mob , but when I kill him it gives me only the money ( 1 gold ).

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