Staredit Network

Staredit Network -> Modding Chat -> DatEdit: new/old SC modding tool
Report, edit, etc...Posted by Ermac on 2006-04-09 at 15:57:40
Now that's an interesting discovery smile.gif Making a unit capable to move, and attack after death would be fun.
Report, edit, etc...Posted by Ojan on 2006-04-09 at 17:39:45
Well, I don't know if that'd be possible by just checking a flag in orders.dat, since the sprite etc is removed in Iscript when a unit dies etc...

Experiment around a bit to see what it really does...
Report, edit, etc...Posted by DiscipleOfAdun on 2006-04-14 at 15:16:36
Okay, I looked at it. If it is checked, the order can be interrupted. Check it for Liftoff and see what happens if you tell the building to move in the middle of the lifting off animation. Yeah. Not something you want happening in game.

Now, if it is cleared the Iscript and the internal ordering system can still mess with it(nobrkcode sections are a different flag on the same variable), but the player cannot mess with the order being executed. Oh, and die still finishes, even if it is unchecked.

Suggested description: Can be Interrupted.

Another fun trick. Check it for "Spider Mine", and then give the right click actions the the spidermine. Select the mine before it burrows, and place anywhere you want via a right click move action. Fun....
Report, edit, etc...Posted by BSTRhino on 2006-04-16 at 21:45:44
Hi BroodKiller,

I just made my first DatEdit mod yesterday, and let me say, I'm so glad that I no longer have to resort to Arsenal Zero for my flingy/sprites/images editing anymore. DatEdit is definitely an advancement in modding technology.

I did have a few suggestions.

1. Units.dat Subunit range - determines the range at which a unit will pickup targets. My suggested name is "target acquisition range". It's a side-effect of this that this value happens to determine the range of the Carrier and Reaver. It used to make the Medic and other Melee range units to acquire targets within a small radius. If the target acquisition range is set to zero, StarCraft just uses the ground/air weapon range instead. I don't know if it's worth mentioning, but the subunit range is expressed in different units from the weapons.dat range units. One subunit range unit is worth two weapons.dat range units. So, a subunit range of 8 has the same range as a weapon with a range of 16 in weapons.dat.

2. Units.dat Animation level - a value of 4 or lower makes the unit walk on the ground. Any value which is 5 or above will make the unit fly - that is, it will allow the unit to move over any terrain. That's the most important distinction. Animation level is also used to control which units appear on top when units are stacked on top of each other or occluding each other from view. The units with a higher animation level will appear on top. I don't actually know what the 0x04 (Air) movement flag does actually, ticking it or unticking it won't help make a unit fly.

3. Units.dat Direction (Graphics tab) - there are 32 turning directions in StarCraft, those are numbered from 0 to 31, rotating clockwise. If the value 32 is specified, the unit will be created facing a random direction.

4. Units.dat Destroy score - as well as determining the additional score that is earned by killing a unit, the destroy score is also used by the AI for targetting purposes. Units with a higher destroy score will be targetted first.

5. Sprites.dat Unknown 2 - determines whether a sprite's image begins as invisible. If ticked, the sprite will be visible, otherwise it will be invisible. Used to hide the white circle, the Zerg Beacon used by Subterranean Spines, and other things.

6. Weapons.dat damage type - the unknown type means "ignore armor". It is used by psionic storm to apply damage while ignoring the armor value of enemy units.

7. Weapons.dat splash ranges - I just wanted to add to the description that the splash range also applies to the nuclear explosion type.

8. Sprites.dat vertical position - You probably already noticed this, but if the info section described vertical position as a signed value, going from the range -128 to 127 might make more sense.

9. This is just a bug I noticed. I've got two monitors and DatEdit seems to want to center in the middle of all the monitors, so it appears in between the two monitors instead of being in the middle of one of them. It's not really much of a hassle, but it'd be nice if I could see the DatEdit splash screen in one piece one day, instead of seeing it split across two monitors.

10. My last point is just a request. I wish you could type in an ID when choosing which flingy to use for a weapon, because that's a feature I would use quite a lot. I realise you haven't got much space though, and I can still live without the feature, so whatever works for you.

Report, edit, etc...Posted by DiscipleOfAdun on 2006-04-17 at 06:30:13
Unknown - Images.dat

If checked, unit can run animation scripts other than Init and Death.

If not checked, only the init, death, and I think some animations that are called by a goto command can be ran for the unit.

Examples I tested - Marine - just sits there and does nothing
CC - doesn't show the construct frame, nor overlays when creating a unit.

Both still died when I attacked them.
Report, edit, etc...Posted by Darktossgen(MM) on 2006-04-17 at 10:48:23
Hey BST, I discovered the Subunit range thing first, but good description. tongue.gif
Report, edit, etc...Posted by TERRAINFIGHTER on 2006-04-17 at 12:17:25
QUOTE(DiscipleOfAdun @ Apr 17 2006, 05:29 AM)
Unknown - Images.dat

If checked, unit can run animation scripts other than Init and Death.

If not checked, only the init, death, and I think some animations that are called by a goto command can be ran for the unit.

Examples I tested - Marine - just sits there and does nothing
CC - doesn't show the construct frame, nor overlays when creating a unit.

Both still died when I attacked them.

[right][snapback]467217[/snapback][/right]

Thanks for finally looking into that further for me, even if it took you half a year to get around to it tongue.gif
Report, edit, etc...Posted by ShadowFlare on 2006-04-17 at 15:37:36
There is also another unknown I know about in weapons.dat. The only short name I can think of for it is Psionic Storm. I can't really think of anything else to summarize it well. Anyway, here is some info I posted about it:

http://www.staredit.net/index.php?showtopi...=20#entry454372
Report, edit, etc...Posted by BSTRhino on 2006-04-17 at 19:59:53
Yeah, that's what I'd call it as well. Heh, I rediscovered the psionic storm thing about four years ago because I didn't realise you had already looked into it.

And Darktossgen(MM), I think we both rediscovered subunit range ourselves at different times. I don't know who got it first, maybe it was ShadowFlare here. But I do see you posted it first in this thread now that I've searched for it. So, you can take credit for that, I'll just take credit for the iscript stuff from now on. Hail Darktossgen(MM), the discoverer of target acquisition range!

Anyway, that's kind of a common pattern in modding. We don't have a good method of keeping track of knowledge, so people keep rediscovering things. Seriously, I remember when I discovered __17 and then I realised one other person had already got it. Then I did scattering bullets, then I realised it had already been done by the WarCraft III TC. I also thought I was the first person to make a nuke launch missiles, but no, that wasn't me either. I think I can take credit for __1e_condjmp, but I only realised how the probability worked because GoldDragon had found a similar command in the AI script. I also wonder if I was the first person to get a non-ground subterranean spines type of weapon to function, or to get the psionic storm to last longer, or to get a weapon to do damage mid-flight, because they seem like typical ideas of a modder, and of course, now everyone does them. But still, I'm pretty sure no one did jumping, spinning, acid trails or 360-degree weapon sprays before me, but then again, I could be proved wrong.

That's the main reason why I signed up for SCU, so people don't have to reinvent the wheel.
Report, edit, etc...Posted by Darktossgen(MM) on 2006-04-17 at 20:08:35
Thank you tongue.gif And, If you look at my mod...hehehe...my Acid Spore does splash IN FLIGHT. Although you dont have the version with that. :-/ I could send it over MSN if ya want. Pritty Nifty, but EzDay281 gave me the tip.
Report, edit, etc...Posted by BSTRhino on 2006-04-17 at 20:16:47
lol, perhaps you got that first as well. But I made the Doom Dragoon mod in 2003... so you'd have to have made it before 2003 to be the first to invent most of the effects in that mod. I mean, I really wonder how many times something like, mid-flight damage has been rediscovered, or whether I might've taught someone at SEN to do that first. I'm not really sure what happened. It'd be interesting to trace the history of StarCraft modding, it'd make an interesting article.

I'm at uni at the moment, so even if I did have MSN, I don't have StarCraft. Maybe if you submitted your mod to the DLDB? Or on StarCraft.org, since it'll be downloadable straight away on there (although it won't appear in the listings straight away).


Oh yeah, I don't know if you've seen the thread yet BroodKiller, but DiscipleOfAdun has some nice descriptions on the flingy.dat unknown things. Here are my suggested names (change these as you please):

Turn style should be called acceleration.
Acceleration should be called stopping distance.
Turn radius should be called turning rate.

I still haven't worked out the flingy.dat distance units, but I've come to the conclusion (as you'll see in the thread at WarBoards.org http://www.warboards.org/showthread.php?t=16044&page=2) that it has to have something to do with the square distance. I'm not exactly sure though, but flingy.dat has its own distance units in which acceleration and speed are expressed in.
Report, edit, etc...Posted by TERRAINFIGHTER on 2006-04-19 at 14:24:04
(sorry about the earlier post, it was off by a bit so I edited it to post the correct information)

I think the acceleration is based off of minitiles, every 2 minitiles it counts as 1 in the acceleration field


there are 32 going down and 32 minitiles going right in a tile and 256 tiles in a tileset

16 • 16 = 256 (I counted half the minitiles since thats how acceleration reads it), 256 • 256 = 65536 (the maximum value)
Report, edit, etc...Posted by BroodKiller on 2006-04-20 at 07:01:43
Geez Cripes!
Well, well, children - I can't leave you for a day or two and you make more DAT research than has been done through the last few years...naughty, naughty little boys....tongue.gif

Ok, now seriously - I'm impressed by your contributions guys and ladies. I didn't even hope we'll get THAT far with this project, but having already went as far as we did, I must say that it's a great pleasure and honour to work with such dedicated and considerate people. And I mean it - thanks A LOT for your help.


I guess it looks like I need to make another update...no, not again...wink.gif

PS:And stop worrying about credits, toss - you'll get what you deserve, be certain of that...(sheeesh tongue.gif)
Report, edit, etc...Posted by Darktossgen(MM) on 2006-04-20 at 16:28:09
tongue.gif Now, lets find the Images.dat unknowns >:-)
Report, edit, etc...Posted by TERRAINFIGHTER on 2006-04-20 at 17:07:09
*correction* Images.dat unknown not unknowns tongue.gif

as for that unknown, me and DoA already solved it


heres DoA's description of it
QUOTE(DiscipleOfAdun @ Apr 17 2006, 05:29 AM)
Unknown - Images.dat

If checked, unit can run animation scripts other than Init and Death.

If not checked, only the init, death, and I think some animations that are called by a goto command can be ran for the unit.

Examples I tested - Marine - just sits there and does nothing
CC - doesn't show the construct frame, nor overlays when creating a unit.

Both still died when I attacked them.

[right][snapback]467217[/snapback][/right]

I think it should be called "allow movement scripts", but hopefully someone thinks of a better (and shorter) label
Report, edit, etc...Posted by Darktossgen(MM) on 2006-04-20 at 17:33:32
No, I mean the PALLETE box.
Report, edit, etc...Posted by Ojan on 2006-04-20 at 17:58:23
And what about Floats?

I'll see if I can get time to continue testing unknowns, but there's a hectic period comming up...
Report, edit, etc...Posted by DiscipleOfAdun on 2006-04-21 at 09:51:26
I agree. There's a bunch of stuff coming up real soon.

So, my pieces.

I guess that I can claim credit for 0x37 in the Iscript. I don't know how anyone else could....

I will look into floats....but not for a while. If I find some free time, I'll get on it.
Report, edit, etc...Posted by Doodle77(MM) on 2006-04-21 at 11:56:07
I'm surprised at how few people use my icecc fix.
Report, edit, etc...Posted by TERRAINFIGHTER on 2006-04-21 at 13:05:35
Thats simply because it doesn't work tongue.gif
Report, edit, etc...Posted by TheEvilBeaVer on 2006-04-21 at 13:44:20
icecc fix?who?what?where? smile.gif
Report, edit, etc...Posted by BroodKiller on 2006-04-21 at 14:15:18
Check DLDB. And no - it does not make the program work outside "C:/IceCC". wink.gif
Report, edit, etc...Posted by TERRAINFIGHTER on 2006-04-21 at 15:46:59
So...how long can we expect before the next DatEdit? biggrin.gif
Report, edit, etc...Posted by BroodKiller on 2006-04-23 at 13:38:22
Can't really tell...I 'm planning to add 2 very serious features, but I don't know how long will it take to get them to work. Just stay here and either A)be patient or B)don't mind - the update will come when it will come smile.gif

ADDITION:
QUOTE(BSTRhino @ Apr 17 2006, 03:45 AM)
2. Units.dat Animation level - a value of 4 or lower makes the unit walk on the ground. Any value which is 5 or above will make the unit fly - that is, it will allow the unit to move over any terrain. That's the most important distinction.

Well, it may be just me, but where I live, the level values that make the units fly start at 12 and not 5. Any reason why? Check it out yourself, plz.

QUOTE
6. Weapons.dat damage type - the unknown type means "ignore armor". It is used by psionic storm to apply damage while ignoring the armor value of enemy units.

I tested it and I found out that you probably meant the "Use Tech" damage type, since it produced exactly the effect you described. The "Unknown" type is still obscure. Setting it for a non-spell weapon makes the unit attack in the "Independent" mode, which means it deals 1 point of damage with each second attack executed. It does have some relation to the explosion spell effects, but I don't know anything for sure. Anyone minds helping me out here? Also, the "Use Tech" property now makes very little sense, and I couldn't find out what it does all by itself after one full day of research, so if anyone knows something about it, please share smile.gif

QUOTE
8. Sprites.dat vertical position - You probably already noticed this, but if the info section described vertical position as a signed value, going from the range -128 to 127 might make more sense.

Too bad DatEd uses an unsigned integer array to store the data in memory, so I guess this is a lost cause. If I would fix it, I'd require me to transmogrify all the other properties, which I'm not very eager of doing, to be honest.

QUOTE
10. My last point is just a request. I wish you could type in an ID when choosing which flingy to use for a weapon, because that's a feature I would use quite a lot. I realise you haven't got much space though, and I can still live without the feature, so whatever works for you.

Yup, the interface in weapons editor is pretty much entirely filled up. I don't want to enlarge the programs area because I want it to remain fully visible under 800x600, but I'll see what I can do down there...

QUOTE(DiscipleOfAdun @ Apr 17 2006, 12:29 PM)
Unknown - Images.dat
If checked, unit can run animation scripts other than Init and Death.
If not checked, only the init, death, and I think some animations that are called by a goto command can be ran for the unit.
Examples I tested - Marine - just sits there and does nothing
CC - doesn't show the construct frame, nor overlays when creating a unit.
Both still died when I attacked them.


I tested it too, with High Templar, and it disabled the Spell casting animation as well. Funny enough, the unit does spend the mana points for the spell, just that the animation doesn't happen, which is another clear indication that the sigorder opcode does the thing. It's only my intuition and I didn't test it (for some reasons my SC don't want to load up Iscript mods) but I think that in case of spell effects, the "Use Tech" property is what is called via the sigorder.
However, the movement animations worked just fine, so something else must be hapenning here.
Report, edit, etc...Posted by ShadowFlare on 2006-04-24 at 03:58:03
QUOTE(BroodKiller @ Apr 23 2006, 10:38 AM)
QUOTE

8. Sprites.dat vertical position - You probably already noticed this, but if the info section described vertical position as a signed value, going from the range -128 to 127 might make more sense.

Too bad DatEd uses an unsigned integer array to store the data in memory, so I guess this is a lost cause. If I would fix it, I'd require me to transmogrify all the other properties, which I'm not very eager of doing, to be honest.
[right][snapback]470515[/snapback][/right]

And what does that have to do with anything? smile.gif The data type used for the memory buffer doesn't really matter as much in C/C++, since you can use type casts to make it another data type. smile.gif
Next Page (17)