Jump to content

PACI

Developer
  • Posts

    402
  • Joined

  • Days Won

    18
  • Feedback

    0%

Everything posted by PACI

  1. No one here is criticizing the completion level of the content you released. They are simply pointing out incorrect logic in your code. Why are you getting defensive about it?
  2. Absolutely nonsense. What's the point of passing fMax to define the camera max distance if it's replaced by 0?
  3. Make sure you call this function on CQuestManager::InitializeLua() - otherwise it won't register it.
  4. Put the entire condition inside parenthesis: (item.vnum >= 11200 and item.vnum <= 11289 or item.vnum >= 11400 and item.vnum <= 11489 or item.vnum >= 11600 and item.vnum <= 11689 or item.vnum >= 11800 and item.vnum <= 11889) and " yes " or " no "
  5. I don't know what the target shadow does, but if I recall, the shadow quality was an option that was already present in the client, only disabled in the python side of it.
  6. You're confusing vnum (virtual number) with vid (virtual ID). That is why it does not work. The quest-function d.spawn_mob() returns, on successful spawn, the vid of the monster spawned, so you must store that value in a dungeon flag and use it in your npc.set_vid_attack_mul() and npc.set_vid_damage_mul() quest-functions. Now, what'd they do specifically: - npc.set_vid_attack_mul: alters the damage multiplier of the monster's hits. The higher the value, the higher the hit damage it will give. - npc.set_vid_damage_mul: this is another multiplier and, unlike what you may think, does not reduce the monster's damage, it weakens it by increasing the damage it takes.
  7. I think that is needless to say, but the whole boat sinks the moment you share accounts with other people. Everyone is responsible for whatever happens to their accounts, and the ownership of one is usually determined through the e-mail it is registered with. The server you registered in may take every single security measure for their users, but if an account is stolen or accessed by another person than not the owner, that only means the owner was careless for their account. And these situations often happen when sensible data such as IDs, passwords and e-mails are shared between one another. That said, it not only comes down to shady staff. Some users are simply stupid. Good reminder nevertheless. Note: To clarify when I say you I don't refer to the OP specifically.
  8. Hello everyone. Back in WoM2, at some point in time, there was this task we had to collect the locations of all monsters featured in hunting quests. One could possibly think it'd be an easy task, but I cannot imagine any of us going through all data from all quests and note down every single one of those locations. This was a particular issue for WoM2 since it ran with something we called "The Dynasties". The kingdoms or empires as we know them would have been removed, mainly due to very bad seasons with the player count. As such, the concept of Dynasty fit the game just well enough. For those who don't know, we got rid of the standard first maps and built a whole new one, making it one common first village for all dynasties. Now what kinda problems would this bring? I'd the say the hardest to wrap our heads on is adaptation. As a new map comes in, knowing the best spots, the best spawns and where to find certain enemies, come to play for a player about to explore the new area their favorite server brought for them. However, we're talking about adapting a completely new server start - which is a very big deal and not always a very good idea. As a server that possessed many risky concepts and quests of many different kinds, guiding the player through that painful and dislikeable start was a must. And on this case, to, at least, facilitate the search of the monsters the quest was telling the player to slay. This little python module I named make_monster_location.py, iterates over all the maps in the map folder, reads their regen, collects groups and groups of groups, and, ultimately, notes down every single location for every monster identified in said map. This is later saved the proper Lua multidimensional table, to be used by quest-functions show_mob_location() and clear_mob_location(). Upon finishing, a Lua module named monster_location.lua is generated. This one must be loaded (through dofile()) in one of your bootload libraries (i.e: settings.lua, questlib.lua, ...). In the spoiler below there is a sample of the generated Lua file: I talked about two new quest-functions previously. Those are the ones you should use in your quests, each one of them works as you can possibly figure: show_mob_location(mob_vnum, map_index, map_x, map_y) -- Displays the locations of the given monster, as long as the player is in the specified map. clear_mob_location() -- Clears the signals inserted by the previous function call. And below, there is the module: As it follows one single file, I saw no purpose in uploading it - but if I see it fits, sure can do and edit the post later. All credits for the idea go to Shogun.
  9. Warriors when costume system first came out.
  10. Replied to their question as they didn't want to elaborate further on their issue. At least this, for them, may buy some time until they figure what is wrong and share it with us.
  11. Remove the OnPressEscapeKey method from the introLoading module.
  12. As a desert? Sorry but no.
  13. for ... do q.begin_other_pc_block(teamArr[j]) pc.give_exp2(pc.get_next_exp()) q.end_other_pc_block() end
  14. PACI

    WoM2

    WoM2 received a closure letter written by Gameforge demanding the shutdown of the server. A week prior the official shutdown, the entire WoM community received a clear and honest notice about the situation. It did not close without an explanation.
  15. Their vnums are 141 and 142, respectively, and they are part of the sources, all you need is the proper skill_proto entry for them to function. One of them is defined as SKILL_ADD_HP iirc. You could start from there.
  16. hi i post for name lopez sel sistem for rank vip buy he portugalian
  17. If conqueror level and generic level are different character points, I assume the method player.GetLevel() will not retrieve a sum of both of them. That leaves us with the condition where you check for player.GetConquerorLevel(), however it seems you forgot to use parenthesis upon calling for this method.
  18. Sorry what are you asking? Not sure if you are for real or trolling.
  19. There is very little information to try and help efficiently, you could start by checking on the logs this player triggers upon this event, or even provide them.
  20. Hello. I reckon important to always log datetimes of actions. The table you provide there could use an account ID field (so you can basically track the account that was HWID banned) and a datetime row (for verification purposes if ever needed). Maybe then limit the rows of that query to 1, since one single result is plenty enough for this verification to do its job. This is considering you have a game management platform (adminpage) where you (or your teammates) can trigger these type of actions. It's also important, the moment of the ban to update the state of the affected account to 'BLOCK' instead of simply adding its hwid into a table, or you might just end up having this player use other methods to enter the game under this (supposedly) locked account. For the rest, you should probably only update the player's HWID once it reaches the handshake phase, because there is just no need to do so beforehand, especially when (during server launches or restarts) a lot of people tend to connect all at once. These are only friendly advises that in my opinion are important to consider for this particular addition. But the content OP proposed is definitely a start! Good share!
  21. There are plenty of other methods to cancel skill animations. It is not exclusive to switching gear, you can also do it by triggering certain emotions, or playing with certain items that often cause some lag (due to the massive usage of CHARACTER::ComputePoints() perhaps, such as the Auto-potions, or Dragon Soul). You could start doing that, but my advise is to consider each skill individually, as their animations have different duration. Using the same value as cooldown will not do the trick.
×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / 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.