Jump to content

Ayane

Members
  • Posts

    24
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Ayane's Achievements

Member

Member (2/3)

0

Reputation

  1. Actually the communication between realmd and mangosd is assured by database. But theorically realmd should conserve session and communicate via socket.
  2. It's not possible due to client.
  3. I have the same crash for "Spawn of Bael'Gar" (level is 0).
  4. JIT or interpreter has same functionality and langage is comparable, the technology JIT just offer more performance than interpreter. By example PHP 1/2/3 is interpreted, PHP 4/5/6 use JIT. LuaJIT is a library like the original Lua library, it is just more faster.
  5. Because Lua is more faster than Python: http://shootout.alioth.debian.org/u32/benchmark.php?test=all〈=luajit&lang2=python3
  6. I agree, Lua has no place in Mangos, just for the AI script, I was not talking about something else. I can help for a ScriptDevLua Project.
  7. Because you use a controller that enhance RAID 1 for read data like RAID0, it's not the standard of RAID1 and all controllers does'nt have this enhance. I'm not a troll, I referred to standard, your choice is good only for somes RAID controllers, it's not really RAID1. I quote Wikipedia only for more informations and explaination about RAID.
  8. http://shootout.alioth.debian.org/u32/benchmark.php?test=all〈=luajit&lang2=gpp
  9. RAID 0 is designed for performance, RAID 1 for backups: RAID 1 don't give performances, it have the same of normal disk. RAID0 read the data simultaneous on all disks in the array, the seeking time is compensed by gain and you have only seeking if the file is fragmented, also on SSD disk you are no seeking time. The default of RAID 0 is if one disk break, all data is loss. RAID 5 combine the advantage of RAID 0 and RAID 1: the data is stripped and mirrored, total you lose the space of one disk of the array; it is good if you have several disks (minimum 3). RAID 6 is RAID 5 in more secure. With four disks you have RAID 1+0 or 0+1 (RAID 10 is most). The default of RAID 5/6 is the parity calculation, so a good RAID hardware is good for RAID performance (better than software). With six disks or more, RAID 50 is good. http://en.wikipedia.org/wiki/RAID
  10. Yes it's right for update, but you can code an AI without Update function.
  11. In C++ you are also restricted to a set of functions, the interface is just larger and easier to implement. Each language has its disadvantages and advantages. If we take the perspective of a developer Mangos there is indeed no interest, but if we take the perspective of those succeptibles develop IA I think the majority preferred to code in Lua .
  12. It is a ScriptDev2 code: http://github.com/scriptdev2/scriptdev2/blob/master/scripts/world/mob_generic_creature.cpp line 93 So I have summon of totem elemental (fire and earth) with level 0 and 0 hp. I think it is scaled with totem... It is I who thank you for the work.
  13. I have a new crash, the same: http://pastebin.com/m7a08fc1e So it seems to be occured by some bad data.
  14. Just after this crash, i add check in Unit::SetMaxHealth (if maxhealth == 0 then set maxhealth = createhealth), no other crashs. I don't have ideas for reproduce this crash, it is my data in creature_template: +-------+--------------------+--------------------+--------------------+-------------+-------------+-----------+------------+-----------+------------+------------------------+---------+----------+----------------+----------+----------+-----------+-----------+---------+---------+-------+-----------+-----------+---------+-------+-------+------+--------+--------+-----------+-------------+----------------+----------------+-----------------+------------+------------+--------------+--------+--------------+---------------+---------------+--------------+-------------+-------------+-------------------+------+------------+--------+----------------+----------+-------------+-------------+-------------+-------------+-------------+-------------+--------+--------+--------+--------+----------------+---------+---------+--------+--------------+-------------+-------+-------+--------------+------------+------------+------------+------------+------------+------------+------------+-------------+--------------+----------------------+-------------+------------------+ | entry | difficulty_entry_1 | difficulty_entry_2 | difficulty_entry_3 | KillCredit1 | KillCredit2 | modelid_A | modelid_A2 | modelid_H | modelid_H2 | name | subname | IconName | gossip_menu_id | 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 | questItem5 | questItem6 | movementId | RegenHealth | equipment_id | mechanic_immune_mask | flags_extra | ScriptName | +-------+--------------------+--------------------+--------------------+-------------+-------------+-----------+------------+-----------+------------+------------------------+---------+----------+----------------+----------+----------+-----------+-----------+---------+---------+-------+-----------+-----------+---------+-------+-------+------+--------+--------+-----------+-------------+----------------+----------------+-----------------+------------+------------+--------------+--------+--------------+---------------+---------------+--------------+-------------+-------------+-------------------+------+------------+--------+----------------+----------+-------------+-------------+-------------+-------------+-------------+-------------+--------+--------+--------+--------+----------------+---------+---------+--------+--------------+-------------+-------+-------+--------------+------------+------------+------------+------------+------------+------------+------------+-------------+--------------+----------------------+-------------+------------------+ | 18706 | 0 | 0 | 0 | 0 | 0 | 17408 | 0 | 17408 | 0 | Bonechewer Riding Wolf | | NULL | 0 | 58 | 59 | 4000 | 4100 | 0 | 0 | 3431 | 14 | 14 | 0 | 1.48 | 1 | 0 | 116 | 174 | 0 | 44 | 1 | 2000 | 2000 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 93 | 139 | 35 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3149 | 16460 | 0 | 0 | 0 | 0 | 0 | | 1 | 3 | 1 | 1 | 0 | 25812 | 25807 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | generic_creature | +-------+--------------------+--------------------+--------------------+-------------+-------------+-----------+------------+-----------+------------+------------------------+---------+----------+----------------+----------+----------+-----------+-----------+---------+---------+-------+-----------+-----------+---------+-------+-------+------+--------+--------+-----------+-------------+----------------+----------------+-----------------+------------+------------+--------------+--------+--------------+---------------+---------------+--------------+-------------+-------------+-------------------+------+------------+--------+----------------+----------+-------------+-------------+-------------+-------------+-------------+-------------+--------+--------+--------+--------+----------------+---------+---------+--------+--------------+-------------+-------+-------+--------------+------------+------------+------------+------------+------------+------------+------------+-------------+--------------+----------------------+-------------+------------------+
  15. Sorry, i don't preserve the crashdump, you will have my word. But it can crash anywhere here: uint32 perc = (m_creature->getVictim()->GetHealth()*100) / m_creature->getVictim()->GetMaxHealth(); or here i_percent = unit->GetHealth() * 100 / unit->GetMaxHealth(); or here uint32 newHPValue = (m_target->GetMaxHealth() * curHPValue) / maxHPValue; or here if (target && (m_target->GetHealth() * 100 / m_target->GetMaxHealth() > target->GetHealth() * 100 / target->GetMaxHealth())) or ...
×
×
  • 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