This is a read only copy without any forum functionality of the old Modcraft forum.
If there is anything that you would like to have removed, message me on Discord via Kaev#5208.
Big thanks to Alastor for making this copy!

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Crumpet

Pages: [1]
1
Recruitment / [PROJECT] The survival games project.
« on: February 09, 2013, 04:53:21 pm »
Hello modcraft.
This thread is both a recruitment thread and a thread to let you know of a relatively exciting project that's in the works.
So, it's likely most of you have seen or played some of the hunger games themed game mods (minecraft being the best example) and if you're like me, you think they're pretty cool and look like a lot of fun to play. As someone who's really interested in WoW modding I thought building and coding a similar kind of thing using WoW would be a fantastic project to work on.

The plan is to have two maps; one is a training village/area for players to wait in before / inbetween games. It will be full of little minigames, dueling areas, leaderboards ( who has won the most survival games etc.) all of which will be scripted in and be based around scenery specifically made for the purpose. This will also be an area to queue for the survival games and mingle with other competitors.
The rough concept map of this area is this:

Allifeur, from here has been working outstandingly, and for free, despite offer of payment, on this map. The style is meant to replicate that of grizzly hills and he has completely nailed it, these very much in progress screenshots illustrate my point:




The other map will be the map for the survival game itself. it will be an instanced map (allowing for multiple games to be in progress at the same time) and about 3x3 adts. The marrying of map design and scripting will allow for certain parts of the map to become inaccessible as players die off (parts will set on fire, avalanches etc.) so that when there are only two players left, they don't run around looking for each other for hours on end.
The rough concept for this map is here:

A map builder is still needed for this map. And evidently one of considerable talent. More info at the end of this post.

As for the rest of the plan. Well. 3 classes will be available, and one race. Hunter, Warrior and Rogue, and Humans. The core is scripted so that ~1 health is lost every 2 seconds with occasional variances, this is to replicate hunger. Food will be available via gameobjects (bushes etc.) and hidden chests in abandoned logging camps etc. Fires heal +1 every 1 second to counteract hunger as long as you aren't in combat, but point you out to nearby players. Armour will remain the same for all characters ->but can be modified with objects found throughout the map (e.g. thorny bush -> re-inforced armor -> deals 1-2 damage to melee attackers). Weapons can be crafted through materials gathered or found and modified using materials gathered (e.g. poisonous plant -> weapon poisons). The classes will obviously be heavily modified, with limited, custom abilities (a.k.a very little blizzard spells) and don't worry, obviously there will be no permanent stealth for rogues.
There is so much more detail but that just about covers the basics.

As for what people are needed and what the entry requirements are, here:

Map builder (the arena):
-Must be of considerable skill (screenshots of previous works would be nice)
-Speed is not necessary but is favorable (the quicker it's done the quicker we can populate and script things dependent on it)
-If your skill merits it, this will be a payed position (there is a limited budget as this is a small scale project)

XML/LUA interface modifier (character creation/login screen):
-Again, you must be skilled at this :
-There is no budget for a payed position here, you'd be helping out voluntarily :/

C++ developer (item and spell scripts):
-This would be solely to help me out as I am the only one scripting for this project
-Must be of considerable skill (past works would be nice to see)


That's pretty much it. The project is welcoming to anyone who wants to help in any other way voluntarily. If you wish to apply, shoot me a pm :)

2
Tutorials / [TUTORIAL] DBC editing: Spells
« on: January 02, 2013, 12:47:17 am »
Part 1: The Basics

Get yourself MyDBCEditor (google it...tada)

Open up Spell.dbc (you're doing so well)

Tonight we're going to tackle a basic but surprisingly educating problem to solve:

There are a few things you need to know about spells. More often than you'd think there is more than one spell involved in the casting of a "singular" spell. For instance, Holy Shock, this spell either heals the target if friendly or damages the target if hostile. Now, unfortunately, dbc's don't handle any mechanic this dynamic and therefore it's handled via the core and there are actually two spells (two entries in the dbc) for each rank of holy shock, one that heals and one that deals damage. Right, now say you wanted to edit holy shock for your new fantabulous twink server so you hop along to open-wow and look up Holy Shock (http://wotlk.openwow.com/?spell=20473) and openwow tells you that the id is 20473. Great, now you head on over to column 80 (incidentally I'll teach you what these columns actually mean, just knowing "that's the one that has the same number as the tooltip" is ridiculous, but I digress...) but what's this? it's empty! you check all the other nearby columns in the vague hope that there will be a number that you can change that will do the right thing, but none of them come close to the damage/healing value specified in the tooltip! ah well, I guess your twink realm won't be so fantabulous after all, right? WRONG MOTHERFUCKER! Here's the solution to your problem, but in order to understand it you have to approach it logically. I've already told you, spell such as holy shock have to be handled in the core, but this is the spell you use to cast it, so this spell must tell you something... It does, the tooltip tells you everything, it tells you how much it will heal for on friendly targets and how much it will damage your newly created super custom fun time boss for your amazing twink server. So, now you go in search of the tooltip column in the DBC, which, by the way, is 170 (most of the time) and you see this:

Quote
Blasts the target with Holy energy, causing $25912s1 Holy damage to an enemy, or $25914s1 healing to an ally.

Ooooh numbers, let's break this down:

"$" pretty much means your getting a value from somewhere else in the dbc. What comes after it is what row it's getting that value from, if there is no number after it, that means it's getting the number from it's own row (e.g. $s1)

"s" stands for the effectbasepoint columns a.k.a 80-82

"1" doesn't have to be 1, but it stands for which of the effectbasepoint columns it is getting the number from, in this case it's column 80, if it was 2 then it would be column 81 and if it was 3 then it would be column 82.

With this new found knowledge you can see that the tooltip is pointing to two different rows (two different spells) to return the heal/damage values. For the heal value it's pointing to row 25914, and sure enough, if we go to row 25914 at column 80, there's the value for the minimum heal for holy shock.



Right ok that's it for tonight, do it yourself with a spell like haunt, see if you can successfully modify both values.

Part one continued: Columns explained

I'm going to try and teach columsn with something to relate to. So let us deconstruct a spell.
Lets take rank 3 fireball (http://wotlk.openwow.com/?spell=145) as it's nice and simple. Ok, so let's look at what fireball does: It takes 2.5 seconds to shoot a projectile (fire-ball... durrr) which deals 53-73 fire damage and then 2 damage over 6 seconds after that.


Quote
It takes 2.5 seconds

This is the cast time. Column 28 handles cast time, but it stands for the casting time index, not the time itself. The value here points to a row in another dbc, SpellCastTimes.dbc. With our fireball, the value in column 28 is 19 so we need to go to SpellCastTimes.dbc and look at row 19 to understand further. We're only interested in column one and the row id in spellcasttimes.dbc as it tells us how long the cast time is, at row 19 the value in column 1 is 2500, so this means that it's done in milliseconds (1000 milliseconds in a second). If you wanted to change the cast time of fireball then you would need to change the value in column 28 (spell.dbc) to a different row id from SpellCastTimes.dbc.


Quote
shoot a projectile (fire-ball...dur)

This is the visual of the spell. Spell visuals are exceedingly complex so I won't go into too much detail as it would no longer be defined basic. But, column 131 is the spell visual column, to oversimplify, this is what makes the fireball look like a fireball, what makes the explosions on impact and what controlls the casting visual. The path of the fireball through the air is controlled elsewhere, but this will be discussed at another time, it's much more advanced. I suggest, for now, you don't tamper with this, it's unlikely it will turn out well. I promise I'll get round to a comprehensive tutorial on it.


Quote
deals 53-73 fire damage and then 2 damage over 6 seconds after that.

This is the fun stuff, but also the most complex. We'll start at the beginning, basic attributes of the spell (columns 4-11 define atributes, these are like limiting factors). The only attribute that fireball has is in column four and it's 0x10000 which means that the spell cannot be cast whilst shapeshifted, simple, this is an attribute that almost every spell has (apart from the obvious exceptions) What the attributes mean can be found here: http://www.wowdev.wiki/index.php?title=Spell.dbc/Attributes (mind, this is only for the first attribute column, each one has its own set).

The spell target type also needs to be defined somewhere, this is defined in column 16. For fireball the value here is zero, which means it can have a singular player/creature target, we'll get on to how this is further refined in a bit.
Lets move on to the spell effects. Columns 71-73 define the effects of the spell. Fireball has two effects, some instant damage and a periodic damage tick. Column 71 for fireball has the value 2 which stands for SPELL_EFFECT_SCHOOL_DAMAGE ( list can be found here : http://www.wowdev.wiki/index.php?title=Spell.dbc/Effect), Column 72 for fireball has the value 6 which stands for SPELL_EFFECT_APPLY AURA.

Lets deal with the SPELL_EFFECT_SCHOOL_DAMAGE first, this means that damage of a particular school is done to the target. The school of damage is defined at column 225, where the value for fireball is 4, which is the value for the fire school of damage. We then go to columns 80-82, which are the effectbasepoints columns, and it is (sortof) the amount of the effect that is applied, so for fireball the value in column 80 (the first effect therefore the first effectbasepoint column) is 52, which means that 53 points of fire damage will be dealt to the target (0 is counted as 1 here), sorted.

As for SPELL_EFFECT_APPLY_AURA, well we need to say which aura is applied. So we go to columns 95-97, which are the columns for "effectapplyauraname". We go to column 96, as the effect was defined in the second effect column and therefore the aura defined should be in the second applyaura column. For fireball the value in column 96 is 3, which stands for SPELL_AURA_PERIODIC_DAMAGE (http://www.wowdev.wiki/index.php?title=Spell.dbc/EffectApplyAuraName) so this means periodic damage is done. Columns 98-100 handle the effect amplitude, which in this case handles the amount of time between the damage ticks, so if we look at column 99 (second column, again, same reasons as before) we see the value for fireball which is 2000, which means that periodic damage will be dealt every 2 seconds (measured in milliseconds). Now we go to the second effectbasepoints column (81) and see that the value is 1 which means 2 damage will be done every 2 seconds. But the after effect of fireball only lasts 6 seconds so this needs to defined somewhere and it is, in column 40, the durationindex column. This column points to the spellduration.dbc and for fireball has the value 32, which points to row 32 in spellduration.dbc which is 6000 a.k.a 6 seconds in milliseconds.
Now, to get back to how the target is refined, we already know it has to be a singular player/creature, but columns 86-88 handle what each effect of the spell can, well, affect. With fireball in column 86 and 87 the value is 6, which means that the effects can not be applied to the caster, in other words, the spell cannot be cast on self.


Ok, I think that's it for the basic explanations of the dbc columns, I hope you enjoyed and I hope it's not too much of a wall of text!

If you don't like it, tell me to stop and I'll stop, I don't care as long as you don't run around screaming about how inferior I am compared to your immense power etc.
If you do like it, just say thanks.

Before you think I'm wrong, bear in mind I've simplified the explanations of some things in order for easy reading.

I will update this as time progresses.

3
Recruitment / [Paid request] Map build
« on: December 29, 2012, 05:30:36 pm »
I'm looking for someone extremely talented in level design to create an outstanding map for me. I have concept maps etc. You need to be artistic and intelligent :) The high skill and large amount of time consumption involved will be accounted for in your payment.

Reply with your Skype name or private message me and we will talk further. If you aren't well known I hope you don't mind if I ask for pictures of previous works.

4
Using premade visuals can be restricting, I've been reseaching into spell visuals and the dbc's that control them. Especially spell paths. You can actually create completely custom paths with some simple knowledge of maths and the dbc system.

Here's a preview of altering the fireball visual with motion paths. This is the most basic version of modifications, it can be so much more complex and interesting/impressive!

http://www.youtube.com/watch?v=R2yCGwRv ... e=youtu.be

5
Miscellaneous / [QUESTION] Spell DBC editing
« on: July 15, 2012, 05:38:44 pm »
I've been looking and testing for a while but I can't seem to find a way to make a custom spell fit into the right tab, e.g. into the "fire" tab instead of under general. It's causing me alot of frustration!

If someone could help I would be very grateful :)

Pages: [1]