Jump to content

Ntsc

Members
  • Posts

    50
  • Joined

  • Last visited

    Never
  • Donations

    0.00 GBP 

Everything posted by Ntsc

  1. Personally I'd suggest just getting a team together and making a demo then throwing that to your investors. The real challenge is that you need to really have motivation and a well rounded team to put together a real game. I've created a few games on my own but it is impossible to create a quality game with a small team of less than 10 within a reasonable amount of time. There are a lot of questions that interested developers would like to ask: * What kind of game are you aiming for? * Why such a short time frame (March 15th, 09)? * Do you have any concept art or anything beside a basic idea? (flesh it out more if not) * What will set your game apart from others? These are the "phases" that I'd assume for such a project. 1. Idea / Concept art. You need to have some ideas down on paper about what your game is going to be and how you are going to accomplish it. 2. Team Gathering. Get together your lead programmer, lead modeler, lead writer, and lead manager (this could be you) 3. Design your base engine and create a working demo. Make it simple and fast. Don't worry to much about mistakes and inaccuracies. 4. Use this base engine / demo to get funding. If it is an open source project use the demo to attract more developers. 5. Finalize your ideas. Figure out the EXACT direction that you want your game to go. What story it should have, what is your audiance, etc. 6. Start developing! Edit: OMG I finally found someone else who played graal?!?!?! Graal is the entire reason I started programming. I loved that game. I played from 1.11 to 1.42 but could never really get into the whole Graal 2000 and beyond.
  2. Ntsc

    Own Scripts

    The DLL must be written in C / C++ and expose the functions / methods found in ScriptCalls.h. The DLL itself can be an interpreter or etc to run LUA (MangoScript did this).
  3. On a somewhat related note, someone will need to test how binary resist spells are effected when casting upon a creature immune to the secondary effect. Examples: Frost bolt on a mob immune to snares Mind flay on a mob immune to snares Death coil on a mob immune to horror (bosses) If they become partially resistible..well that would be weird but something you can't rule out until you test. Mind Flay doesn't actually have mechanic snare and neither does frost bolt. Both of them are NULL mechanic spells, they do have mechanic snare set for effect_2_mechanic though. I'd be willing to bet there is an attribute though as there are many boss spells which are not resistible at all and others which can only be fully resisted or not resisted.
  4. All display of chat is done client side. You can look for 3rd party addons for the client to color players by their class name.
  5. You can copy and paste code from SD2 into mangos. ScriptDev2 is based primarily on CreatureAI which is what mangos uses (through AgressorAI and ReactorAI) to handle creatures that are not scripted with SD2.
  6. Hmm, we'll have to make some changes to 3rd party libs (SD2) to handle this though. The problem I see with this is we will have to somehow figure out if a spell is an AoE or not before casting it and then pass the X,Y,Z of target when casting. The correct way to do this would be to have Unit::CastSpell automatically figure that if we are casting an AoE ground targeted spell on a unit to instead cast on that units position. This will eliminate the need to overcomplicate spell handling in 3rd party script library.
  7. The client uses a ratings system to get actual skill numbers and percentages. You can read up on it at well known wiki sites. Ex: at level 60, 14 crit rating = 1% crit at level 70, 22.08 crit rating = 1% crit
  8. .debug setvalue <field> <value> .debug getvalue <field> and I think the last one is just .debug mod32value <field> <value> But I'm probably wrong on the last one.
  9. MANGOS_WIN32_DLL_IMPORT is never used. DLL_SPEC is what all other classes and functions use. You are probably right about that though. Me and Wyk3d were talking about this issue earlier today on IRC. We probably should be using MANGOS_DLL_DECL with MANGOS_WIND_DLL_EXPORT for Mangos and MANGOS_WIND_DLL_IMPORT for 3rd party script library. I'll have to try that out some time.
  10. Hmm actually I thought that using CastCustomSpell you could modify the base points of an effect. For example using the spell given you could make it give +200% by simply modifing the base points of effect one. I might be wrong so don't quote me on that =P
  11. Eh, nvm I think I figured out a fix. I'll add it to the svn after my build finishes. Edit: Yep fixed in 6418. =), MANGOS_DLL_DECL doesn't do anything currently, you must use MANGOS_DLL_SPEC
  12. I'm getting 1>Linking... 1> Creating library ..\\..\\..\\..\\bin\\win32_release/MaNGOSScript.lib and object ..\\..\\..\\..\\bin\\win32_release/MaNGOSScript.exp 1>mob_event_ai.obj : error LNK2019: unresolved external symbol "unsigned int __cdecl urand(unsigned int,unsigned int)" (?urand@@YAIII@Z) referenced in function "public: void __thiscall Mob_EventAI::ProcessEvent(struct EventHolder &,class Unit *)" (?ProcessEvent@Mob_EventAI@@QAEXAAUEventHolder@@PAVUnit@@@Z) 1>..\\..\\..\\..\\bin\\win32_release/MaNGOSScript.dll : fatal error LNK1120: 1 unresolved externals 1>Build Time 8:48 1>Build log was saved at "file://d:\\Projects\\MangosCode\\src\\bindings\\ScriptDev2\\VC90\\ScriptDev2__Win32_Release\\BuildLog.htm" 1>ScriptDev2 - 2 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 1 up-to-date, 0 skipped ========== When compiling SD2 now. Could you please check that you correctly defined urand so that SD2 can use it? We really would like to use the MaNGOS urand and other functions than use rand().
  13. Wouldn't it be a whole lot easier to simply disable the QoS Packet Scheduler?
  14. Tower Taking is actually being worked on by a few members. WolfDragon's WorldStates patch was a part of that as was w12x's code for Tower and other world pvp objectives. I think problem is that we have TO many big patches right now that delay review of some other patches. For example the Instance System, Multi-threaded maps, Arena System. A todo list would be nice but maybe best if it is kept very generic and only for big work (ex NO class skills or other small crappy things). I think it should also be posted publicly so non devs may know what they can work on if they have time. Hmm, I don't really see a whole lot of use keeping an up to date list of what is being worked on. The major patches we already know and are always posted somewhere in the dev sections. Wyk3d is doing instances system, Ralf the multi-threaded maps, etc. I personally only take on small endeavors related to creatures.
  15. I see DiSlord is now Developer, welcome =)
  16. Neither of these are official movement generators though and both can already be done with current movement generators work. I think you not understand how movement generators work with creature AI. The movement generator ONLY generates movement. That is all it does. It does not know or care if it is in combat nor does it know or care what happens after it reaches that point. Both of these functions can already be done. Use PointMovementGenerator to "attack to position" (escortAI in SD2 has a good example of how to do this). And to make a creature defend that position simply do not allow the creature to return to his home position (escortAI also shows how to do this). These two types of movement generators would be very very rarely used. I cannot think of any creature that doesn't already require a script that would require these.
  17. Probably due to one of the files in the \\dep\\lib\\win32_debug folder but I cannot tell for certain. I agree that it is very annoying.
  18. Ok well this is confusion for many Script developers so I explain here: Units are removed from all threat lists the moment they die. For example void UpdateAI(uint32 diff) { if (!m_creature->getVictim()) return; m_creature->getVictim()->DealDamage(m_creature->getVictim(), m_creature->getVictim()->GetMaxHealth(), bla bla bla); m_creature->getVictim()->GetHealth(); //CRASH! } getVictim() returned NULL at the line that says crash. This is because Victim is no longer valid. 99.9% of the the time you will not have a problem with this because all spells are actually casted on NEXT world update tick. The only exception to this is Triggered spells. Triggered spells are cast right then and there. Example void UpdateAI(uint32 diff) { if (!m_creature->getVictim()) return; m_creature->CastSpell(m_creature->getVictim(), 5, false); m_creature->getVictim()->GetHealth(); //Safe } void UpdateAI(uint32 diff) { if (!m_creature->getVictim()) return; m_creature->CastSpell(m_creature->getVictim(), 5, true); m_creature->getVictim()->GetHealth(); //Crash } The method the original MaNGOS developers chose was to simply assert if the target was somehow removed from threat list while CreatureAI::Update() was still in progress. Personally with ScriptDev2 I have had zero problems with simply adding Null pointer checks. On related note this crash also occurs with ThreatList Iteration if unit is removed from threatlist during the iteration but that is another story for another time. Anyway as far as I am concerned I'd say simply remove the assert and add a Null pointer check (if (!Victim) return;).
  19. .gm fly on It is now a sub command of gm
  20. Hmm did you use the WorldStatePatch written by WolfDragon/Seline? (sorry this patch is to huge for me to check right now) If not I recommend you merge it with yours as WorldStates need to be correctly stored and updated. Existing MaNGOS worldstate functionality only send to client.
  21. I agree with both DiSlord and Arrai as new developers. They have both demonstrated good understanding of MaNGOS code, Style, and show some tact with their posts (ie: they are not rude on forums).
  22. The mini map and main map icons are controlled by world states but the actual control of the nodes is not implemented in mangos.
  23. Hmm tested this time and worked perfectly. Thank you. Added 5673
  24. Hmm I already tried this and it didn't work before but I will test this again. Maybe I was tired.
×
×
  • 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