-
Posts
1402 -
Joined
-
Last visited
-
Days Won
3 -
Donations
90.00 GBP
Content Type
Bug Tracker
Wiki
Release Notes
Forums
Downloads
Blogs
Events
Everything posted by Xenithar
-
Warrior level stats bug... When an Orc warrior hits level 11, the message states that you gain "-1" hit points. Upon checking, you have 300 at 11. Is this a UI bug or something in our DB?
-
Quest 1960 broken... Quest 1960, "Investigate the Alchemist's Shop" is broken. You can use the scroll at the shop, but the ghosts never appear. I am posting this without looking into SD3, but I imagine it is just a trigger to spawn the ghosts which is either missing or not implemented. Likely a simple fix. This does halt mage questline progression for Horde characters at 16, however.
-
Instance entry level not correct...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
Using GM mode will teleport you into anything, even Onyxia at level 1 and without the item required. A side-effect of this bug is that if a player, say level 30, attempts to enter SM and cannot, I cannot teleport them as a GM anywhere. For example, I could not teleport my fiance from the instance-gates for SM back to Brill. It says the player is already being teleported even though she was not. The only fix is for her to log and come back. It is kind of like a teleport flag is permanently set. -
I forgot to post the update to this. MANY mobs are incorrect again, including Horde Guards (entry 3501). The male guard is half the size of my female Tauren character. I have been generating a list of incorrect NPCs and mobs and will be creating a SQL update to fix it. Lots are wrong though. Some Zhevra are tiny, others are perfect. Different entries though.
-
Instance entry level not correct...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
True, but why is it not letting lv29 toons in? It says you need to be 29. Get a 29 toon and you cannot get in. Very strange. -
That is not the issue. Even at 1024 it blanks out at times. The issue is a coding issue inside the bot somewhere.
-
Extraction scripts broken in *nix...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
I ran the tools manually and they worked, but I haven't checked out the new scripts. I will rebuild this weekend and test them. I will fix them if needed. -
Alright, I may do that. It would indeed make it easier to start fresh on the AI, and if I focus on one class at a time, I could probably get something passable in a short amount of time. I guess the only thing left to ask is what everybody agrees on for how each AI should react. For example, I remember playing my mage solo plenty back in the day. I'd run into a group of mobs, root with frost nova, blink, and cast something (cannot remember the name) which did AoE damage. This would not be good in a group, obviously. In group play I normally stayed back and hurled fire and ice at things. If there are suggestions for how a class AI should work grouped, post them here. I am digging into the code now, but will be leaving in an hour or two for about four hours.
-
I agree with Reaper, moving the playerbots to a daemon would really increase network latency and, on virtualized (read; modern) setups that would increase CPU usage on the virtualized hardware. Keep the bots in the core. I will start looking at the AI. My big beef is the commands not confirming success. For example "~co +fire,-frost" results in my mage doing the correct thing, but he does not tell me his style changed. I also cannot list what the existing orders are. I plan on fixing that, but the chat parser and commands are strung out all over the place and they're not commented. As for the AI however, I know right where those files are and can look into understanding them and updating them. I will begin that this weekend. I really like the bots and have been going in just to mess around with them a lot lately, and would love to improve them. If you have any advice, feel free to post it. Otherwise I'll be doing this starting Saturday night.
-
The current build in R21 is decent for basic questing and I am becoming interested in the project and furthering the AI. I have been looking over the code for a few days and am stumped as to where the commands are. The code could use some serious commenting. I believe if I can pick it up I can expand what this does and am actually excited to do just that. I'll keep looking at it and testing.
-
Player bots crash on roll... I was having a few of my characters follow me around (characters I created and loaded with the bot AI) and when we had to roll on a green, the server crashed. I am working on mmaps right now and just wanted this noted. [code] Baratus T:no possible targets Baratus PUSH:add gathering loot 2.000000 Baratus A:lfg join - UNKNOWN Baratus A:add gathering loot - FAILED Baratus A:follow master - USELESS Baratus PUSH:follow master 1.000000 Baratus no actions executed Menelkir --- AI Tick --- Menelkir T:loot roll Menelkir PUSH:loot roll 100.000000 Menelkir T:no possible targets Menelkir PUSH:lfg join 100.000000 Menelkir T:no possible targets Menelkir PUSH:add gathering loot 2.000000 Menelkir T:timer Menelkir PUSH:check mount state 1.000000 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffff0276700 (LWP 9726)] 0x0000000000dec932 in Reference::isValid (this=0x0) at /usr/src/zero/server/src/framework/Utilities/LinkedReference/Reference.h:137 137 return iRefTo != NULL; (gdb) backtrace #0 0x0000000000dec932 in Reference::isValid (this=0x0) at /usr/src/zero/server/src/framework/Utilities/LinkedReference/Reference.h:137 #1 0x0000000001134c80 in ai::LootRollAction::Execute (this=0x7fffe0efdd50, event=...) at /usr/src/zero/server/src/modules/Bots/playerbot/strategy/actions/LootRollAction.cpp:28 #2 0x00000000010dcf63 in ai::Engine::ListenAndExecute (this=0x7fffd9c0cdf0, action=0x7fffe0efdd50, event=...) at /usr/src/zero/server/src/modules/Bots/playerbot/strategy/Engine.cpp:466 #3 0x00000000010db211 in ai::Engine::DoNextAction (this=0x7fffd9c0cdf0, unit= 0x0, depth=0) at /usr/src/zero/server/src/modules/Bots/playerbot/strategy/Engine.cpp:171 #4 0x000000000108df07 in PlayerbotAI::DoNextAction (this=0x7fffd9bead90) at /usr/src/zero/server/src/modules/Bots/playerbot/PlayerbotAI.cpp:396 #5 0x000000000108ca6e in PlayerbotAI::UpdateAIInternal (this=0x7fffd9bead90, elapsed=101) at /usr/src/zero/server/src/modules/Bots/playerbot/PlayerbotAI.cpp:173 #6 0x00000000010a221e in PlayerbotAIBase::UpdateAI (this=0x7fffd9bead90, elapsed=101) at /usr/src/zero/server/src/modules/Bots/playerbot/PlayerbotAIBase.cpp:22 #7 0x000000000108c79d in PlayerbotAI::UpdateAI (this=0x7fffd9bead90, elapsed=101) at /usr/src/zero/server/src/modules/Bots/playerbot/PlayerbotAI.cpp:149 #8 0x0000000000cb2189 in Player::Update (this=0x7fffd9bd9c10, update_diff=101, p_time=101) at /usr/src/zero/server/src/game/Object/Player.cpp:1331 #9 0x0000000000e32b87 in WorldObject::UpdateHelper::Update ( this=0x7ffff0275c90, time_diff=101) at /usr/src/zero/server/src/game/Object/Object.h:473 #10 0x0000000000e3cf55 in Map::Update (this=0x5a0ab50, t_diff=@0x7fffdc3c7db0: 101) at /usr/src/zero/server/src/game/WorldHandlers/Map.cpp:489 #11 0x0000000000f59af2 in MapUpdateRequest::call (this=0x7fffdc3c7d90) at /usr/src/zero/server/src/game/Maps/MapUpdater.cpp:50 #12 0x000000000100da42 in DelayExecutor::svc (this=0x370e480) at /usr/src/zero/server/src/shared/Threading/DelayExecutor.cpp:67 #13 0x00007ffff776b4d7 in ACE_Task_Base::svc_run(void*) () from /usr/lib/libACE-6.0.3.so #14 0x00007ffff776cde5 in ACE_Thread_Adapter::invoke_i() () from /usr/lib/libACE-6.0.3.so #15 0x00007ffff776cef5 in ACE_Thread_Adapter::invoke() () from /usr/lib/libACE-6.0.3.so #16 0x00007ffff5edab50 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0 #17 0x00007ffff5c2495d in clone () from /lib/x86_64-linux-gnu/libc.so.6 #18 0x0000000000000000 in ?? () [/code] Next time I'll do loot master and see if ti repeats itself.
-
Creatures near thunderbluff walk in the air
Xenithar commented on easylife's bug in Archived Reports (Zero)(Resolved issues)
Did you configure MaNGOS and point it to the correct directories and such? What you are describing sounds to me like the server daemon is not finding the movement maps. I cannot reproduce this with the current build. Did you copy the new mmaps directory into the correct location after building? *UPDATE* Scratch that, I can now produce this issue with the maps created by the new tools. Things even go underground where the Darkmoon Faire is supposed to be. See attached pics. -
Creatures near thunderbluff walk in the air
Xenithar commented on easylife's bug in Archived Reports (Zero)(Resolved issues)
Last night I cloned the latest d21 branch and built the new tools. I then re-extracted everything and it fixes about 90% of the movement issues with mobs. Some mobs still climb into the air, but hunter/lock pets can now follow the player and mobs can get to the player to fight, instead of standing in place and trying to enter combat repeatedly. My advice to the OP is to clone everything again, build again, and extract everything using the new tools. This should fix your problems. I will note that the new, unified tool does a good job, but I still get mobs going into the sky from time to time. I am not sure why, but it is still MUCH better than before, though a hair behind what we had a year ago. Perhaps we should make an option for creating better movement maps at the expense of disk space. Kind of like we have the option to make worse maps to save space (int vs float I believe). -
Current develop21 fails to build under Unix/Linux... I just cloned the official repo maybe five minutes ago and attempted to build develop21. I did do the recursive clone, but got this anyway. [code] Scanning dependencies of target LuaEngine [ 27%] Building CXX object src/modules/Eluna/CMakeFiles/LuaEngine.dir/GroupHooks.cpp.o In file included from /usr/src/zero/server/src/shared/Database/DatabaseEnv.h:46:0, from /usr/src/zero/server/src/game/Object/Player.h:33, from /usr/src/zero/server/src/modules/Eluna/LuaEngine.h:17, from /usr/src/zero/server/src/modules/Eluna/HookHelpers.h:10, from /usr/src/zero/server/src/modules/Eluna/GroupHooks.cpp:11: /usr/src/zero/server/src/shared/Database/Database.h: In constructor âDatabase::Database()â: /usr/src/zero/server/src/shared/Database/Database.h:822:16: warning: âDatabase::m_pingIntervallmsâ will be initialized after [-Wreorder] /usr/src/zero/server/src/shared/Database/Database.h:740:37: warning: âDatabase::DBTransHelperTSS* Database::m_TransStorageâ [-Wreorder] /usr/src/zero/server/src/shared/Database/Database.h:658:9: warning: when initialized here [-Wreorder] In file included from /usr/src/zero/server/src/modules/Eluna/LuaEngine.h:20:0, from /usr/src/zero/server/src/modules/Eluna/HookHelpers.h:10, from /usr/src/zero/server/src/modules/Eluna/GroupHooks.cpp:11: /usr/src/zero/server/src/game/WorldHandlers/World.h: At global scope: /usr/src/zero/server/src/game/WorldHandlers/World.h:415:9: error: âunordered_mapâ in namespace âstdâ does not name a type compilation terminated due to -Wfatal-errors. make[2]: *** [src/modules/Eluna/CMakeFiles/LuaEngine.dir/GroupHooks.cpp.o] Error 1 make[1]: *** [src/modules/Eluna/CMakeFiles/LuaEngine.dir/all] Error 2 make: *** [all] Error 2 [/code] Looks like a typedef issue at first glance. I imagine Reaper already has a fix for it. I am cooking dinner and cannot dig into it yet.
-
Creatures near thunderbluff walk in the air
Xenithar commented on easylife's bug in Archived Reports (Zero)(Resolved issues)
Reaper, I said vmaps/movement and MEANT to say mmaps/movement, thanks for the correction. I got separate tools the last time I built everything on my Linux box (assembler and extractor were separate) and this was Monday. I just now cloned the official repo, develop21, and can't even build the stuff due to an LUA make error. I am about to post this error in a ticket, but I believe the separate tools were bugged and I have bad mmaps, as this person probably does. Once I can try building the mmaps with the new, unified tool I expect the issue to go away. -
I will check on this tonight. I seem to recall this thread from ages ago, but have not checked lately. If it still exists I can work on it. The thing is, I would have to work on it one mob at a time, by using "modify scale x.y" until I find the right scale. Is there a way to extract the original, Blizzard scales from the client files? If not I can handle this, but it will come in increments and may take a while, unless everything needs to be scaled by some exact amount.
-
Extraction scripts broken in *nix...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
Alright, a quick fix has been been PR'd. It is located [url=https://github.com/mangoszero/server/pull/63]here[/url]. I am working on a better fix now. -
Extraction scripts broken in *nix... The extraction scripts are currently broken in Unix and Linux (tested under Gentoo 64bit, Debian 7.9 64bit, and SCO Unix). Aside from creating an empty movemaps directory and not creating movemaps, it also does not create vmaps. To top that off, we get this when running "ExtractResources.sh". [code] Extracting GameObject models... Extracting \kl_onyxiaslair.wmo No such file \kl_onyxiaslair.wmo. Couldn't open RootWmo!!! Asset Extraction Complete ! Extraction Work complete. No errors. Sun Jan 17 11:12:05 EST 2016: Extracting of vmaps finished sh: 0: Can't open ./MoveMapGen.sh [/code] Yes, the movemap generator script was there and marked 755 (executable) but it refused to run it from within the primary script. I will work on a replacement script and do a PR tonight.
-
Loot system broken...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
Nice work! I'll mark this as solved. -
Loot system broken... I have a strange issue where the server crashes if I am grouped and I kill ANY of the ghostly creatures in EPL. You know, like the "Hate Shrieker" in Corrin's Crossing. If I am grouped and kill one, it crashes 100% of the time. If I am solo, I can loot them and continue. This does NOT happen with the ghouls and skeletons, or bats and such. Below is the crash and backtrace. [code] creature 92561 stopped attacking player 1 player 1 stopped attacking creature 92561 SET JUST_DIED DealDamageEnd returned 452 damage AttackerStateUpdate: (Player) 1 attacked 92561 (TypeId: 3) for 452 dmg, absorbed 0, blocked 0, resisted 0. AttackerStateUpdate: (Player) 1 attacked 92561 (TypeId: 3) for 766 dmg, absorbed 0, blocked 0, resisted 0. AttackerStateUpdate: (Player) 1 attacked 92561 (TypeId: 3) for 457 dmg, absorbed 0, blocked 0, resisted 0. Condition-System: Check condition 237, type 10 - called from loot system with params plr: Player Ravirr (Guid: 1), map 0, src Condition-System: Check condition 1733, type 38 - called from loot system with params plr: Player Ravirr (Guid: 1), map 0, src Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffff209f700 (LWP 17646)] 0x0000000000a572f8 in WorldObject::GetPositionY (this=0x0) at /usr/src/zero/server/src/game/Object/Object.h:496 496 float GetPositionY() const { return m_position.y; } (gdb) continue Continuing. [Thread 0x7fffee272700 (LWP 17651) exited] [Thread 0x7fffeea73700 (LWP 17650) exited] [Thread 0x7fffef274700 (LWP 17649) exited] [Thread 0x7fffefa75700 (LWP 17648) exited] [Thread 0x7ffff0276700 (LWP 17647) exited] [Thread 0x7ffff209f700 (LWP 17646) exited] [Thread 0x7ffff493a700 (LWP 17615) exited] [Thread 0x7ffff513b700 (LWP 17614) exited] [Thread 0x7ffff5b48700 (LWP 17613) exited] Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists. (gdb) #0 0x0000000000a572f8 in WorldObject::GetPositionY (this=0x0) at /usr/src/zero/server/src/game/Object/Object.h:496 #1 0x0000000000acc95b in Cell::VisitGridObjects > (center_obj=0x0, visitor=..., radius=13, dont_load=true) at /usr/src/zero/server/src/game/WorldHandlers/CellImpl.h:183 #2 0x0000000000ab4e1c in PlayerCondition::Meets (this=0x2085e30, player= 0x8b6d410, map=0x5654010, source=0x0, conditionSourceType=CONDITION_FROM_LOOT) at /usr/src/zero/server/src/game/Object/ObjectMgr.cpp:7165 #3 0x0000000000ab3731 in ObjectMgr::IsPlayerMeetToCondition (this=0x1630710, conditionId=1733, pPlayer=0x8b6d410, map=0x5654010, source=0x0, conditionSourceType=CONDITION_FROM_LOOT) at /usr/src/zero/server/src/game/Object/ObjectMgr.cpp:6876 #4 0x0000000000bc5919 in LootTemplate::HasStartingQuestDropForPlayer ( this=0x75aca70, store=..., player=0x8b6d410, groupId=0 '\000') at /usr/src/zero/server/src/game/Object/LootMgr.cpp:1251 #5 0x0000000000bc116a in LootStore::HaveStartingQuestLootForPlayer ( this=0x15be620, loot_id=8542, player=0x8b6d410) at /usr/src/zero/server/src/game/Object/LootMgr.cpp:234 #6 0x0000000000b84b81 in Player::isAllowedToLoot (this=0x8b6d410, creature= 0xa32d890) at /usr/src/zero/server/src/game/Object/Player.cpp:14133 #7 0x0000000000a866a6 in Object::BuildValuesUpdate (this=0xa32d890, updatetype=0 '\000', data=0x7ffff02734f0, updateMask=0x7ffff0273520, target=0x8b6d410) at /usr/src/zero/server/src/game/Object/Object.cpp:454 #8 0x0000000000a85977 in Object::BuildValuesUpdateBlockForPlayer ( this=0xa32d890, data=0x7fffea954878, target=0x8b6d410) at /usr/src/zero/server/src/game/Object/Object.cpp:233 #9 0x0000000000a890d0 in Object::BuildUpdateDataForPlayer (this=0xa32d890, pl=0x8b6d410, update_players=...) at /usr/src/zero/server/src/game/Object/Object.cpp:908 #10 0x0000000000a8fc10 in WorldObjectChangeAccumulator::Visit ( this=0x7ffff0274ad0, m=...) at /usr/src/zero/server/src/game/Object/Object.cpp:1936 #11 0x0000000000a9a40f in VisitorHelper ( v=..., c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:72 #12 0x0000000000a9a184 in VisitorHelper (v=..., c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:85 #13 0x0000000000a99cc1 in VisitorHelper > (v=..., c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:86 #14 0x0000000000a9998d in VisitorHelper > > (v=..., c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:86 #15 0x0000000000a99750 in VisitorHelper > > > (v=..., c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:86 #16 0x0000000000a99583 in VisitorHelper > > > > ( v=..., c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:98 #17 0x0000000000a99258 in TypeContainerVisitor > > > > >::Visit (this=0x7ffff0274a60, c=...) at /usr/src/zero/server/src/framework/GameSystem/TypeContainerVisitor.h:127 #18 0x0000000000a98cd8 in Grid > > >, TypeList > > > >::Visit (this=0xa09c8b0, visitor=...) at /usr/src/zero/server/src/framework/GameSystem/Grid.h:111 #19 0x0000000000a98452 in NGrid > > >, TypeList > > > >::Visit > > > > (this=0xa08fd60, x=@0x7ffff027485c: 7, y=@0x7ffff0274858: 4, visitor=...) at /usr/src/zero/server/src/framework/GameSystem/NGrid.h:360 #20 0x0000000000a97358 in Map::Visit > > > > > (this=0x5654010, cell=..., visitor=...) at /usr/src/zero/server/src/game/WorldHandlers/Map.h:469 #21 0x0000000000a97499 in Cell::VisitCircle > > > > > (this=0x7ffff0274a70, visitor=..., m=..., begin_cell=..., end_cell=...) at /usr/src/zero/server/src/game/WorldHandlers/CellImpl.h:145 #22 0x0000000000a94e0a in Cell::Visit > > > > > (this=0x7ffff0274a70, standing_cell=..., visitor=..., m=..., x=2396.13843, y=-5192.90137, radius=91.125) at /usr/src/zero/server/src/game/WorldHandlers/CellImpl.h:102 #23 0x0000000000a92a42 in Cell::Visit > > > > > (this=0x7ffff0274a70, standing_cell=..., visitor=..., m=..., obj=..., radius=90) at /usr/src/zero/server/src/game/WorldHandlers/CellImpl.h:62 #24 0x0000000000a9134c in Cell::VisitWorldObjects (center_obj=0xa32d890, visitor=..., radius=90, dont_load=true) at /usr/src/zero/server/src/game/WorldHandlers/CellImpl.h:199 #25 0x0000000000a8d6d0 in WorldObject::BuildUpdateData (this=0xa32d890, update_players=...) at /usr/src/zero/server/src/game/Object/Object.cpp:1946 #26 0x0000000000cea9ac in Map::SendObjectUpdates (this=0x5654010) at /usr/src/zero/server/src/game/WorldHandlers/Map.cpp:1879 #27 0x0000000000ce4e36 in Map::Update (this=0x5654010, t_diff=@0x7fffe8132850: 100) at /usr/src/zero/server/src/game/WorldHandlers/Map.cpp:574 #28 0x0000000000e00e6a in MapUpdateRequest::call (this=0x7fffe8132830) at /usr/src/zero/server/src/game/Maps/MapUpdater.cpp:50 #29 0x0000000000eb3e8a in DelayExecutor::svc (this=0x335a970) at /usr/src/zero/server/src/shared/Threading/DelayExecutor.cpp:67 #30 0x00007ffff776b4d7 in ACE_Task_Base::svc_run(void*) () from /usr/lib/libACE-6.0.3.so #31 0x00007ffff776cde5 in ACE_Thread_Adapter::invoke_i() () from /usr/lib/libACE-6.0.3.so #32 0x00007ffff776cef5 in ACE_Thread_Adapter::invoke() () from /usr/lib/libACE-6.0.3.so #33 0x00007ffff5edab50 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0 #34 0x00007ffff5c2495d in clone () from /lib/x86_64-linux-gnu/libc.so.6 #35 0x0000000000000000 in ?? () [/code] Not sure why only these mobs cause the crash, but maybe more do around the world. Again, it is not just the hate shriekers, it is any mob that shares that model. This includes the ones on the other side of the map with different names. Sorry, I forget them off the top of my head. Either way, something is off and it APPEARS to be with the loot system.
-
Creatures near thunderbluff walk in the air
Xenithar commented on easylife's bug in Archived Reports (Zero)(Resolved issues)
This is a bug with either the vmaps creation or the server. I am experiencing this all over the place. Other symptoms will include mobs which aggro, then lose aggro, then repeat constantly, probably due to not being able to path to your player, despite being right next to you. Tanaris is a great place to see this issue in action. Get a hunter or warlock and TRY to keep the pet with you. They cannot even path over small dunes. So yes, either vmaps are broken during creation or the server-side code for handling mobs/pets is broken. I am not familiar with the vmap/movement code personally, but if this remains open when I finish my next set of fixes and PR it, I will look into it. Hopefully somebody more familiar with the movement code can sort it before then. -
Update 21_1_25 broken...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
Yeah, I did not understand what it fixed, but left it alone. I thought about doing a PR for >0, but wanted somebody familiar with why these lines were even in there to comment first. They appear to do nothing. -
Update 21_1_25 broken...
Xenithar commented on Xenithar's bug in Archived Reports (Zero)(Resolved issues)
I disabled all the safe update features on the server and was able to execute the two lines of code and the other remaining 126 lines. All is good now, but there has to be a WHERE clause in these updates. I turned my safe updates settings back on after updating to 21_2_1. I am good and can continue work on the server, but something should be done about this. I will leave this open since the issue has not been fixed.
Contact Us
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
This website is in no way associated with or endorsed by Blizzard Entertainment®