Staredit Network

Staredit Network -> Concepts -> TRIGGERS OF GOD
Report, edit, etc...Posted by Mp)PeazeL on 2005-08-02 at 02:45:46
hmm. I think im getting this. Let me see if anyone thinks this is right for what i explain.

A ghost has an ID of 1 right, so then you would use byte 2 which would be 00 00 00 00

And you would switch the second byte to 01 or 02 to enable shields?

Or for a marine which has an ID of 0 you would use the first byte in the list.
And switch the first byte in the list to 01 or 02 to give marine shields. Am i correct?

100 means your adding 01 to the second byte right in hexedecimal. Does 50 modify the first byte? So if a marine wanted shields you would need to add 50 in hexedecimal to make the first byte 01 for the marine to get shields?

Since 100 equals up to 256 for the death count, what does 50 equal up to for the marine.

Ive got a question, what about the firebats ID. He has ID32, what byte would that go in???

And how do you figure out the all the deaths for the weapon changing since MemCalc cant find it. Are there programs other than MemCalc to change unit weapons.
Report, edit, etc...Posted by DT_Battlekruser on 2005-08-02 at 04:04:23
Peazel you sort of got it. The Firebat would be a few players on.

QUOTE(Angelfarto @ Aug 1 2005, 03:48 PM)
About the whole editing stuff for p9-p12 thing, why can;t it be possible to use P8 but add a bigger offset: i.e. a really big number: SetDeaths(P8, Add, 90000000000000000000, -29576);

or does SC memory not work that way? meaning, are P8 and P9 bytes next to each other?
00 00 00 00 00 00 00 00

Like if you wanted to edit byte 1 of P9: 00 00 00 00
So you edit byte 4 of P8 instead: 00 00 00 00
And add 4278190080 to byte 4 of P8 to get 00 00 00 FFSetDeaths(P8, Add, 4278190080, -29576);
And then add 1 more to byte 4 of P8 - SetDeaths(P8, Add, 16777216, -29576);
To get 00 00 00 00 01, which is actaully 01 00 00 00 of P9

or am I talking out my ass here and making pretty christmas colors with numbers..
[right][snapback]276252[/snapback][/right]


yeah you're talking out of your ass. tongue.gif Two things: If you do add 1 to a FF FF FF FF byte, you get 00 00 00 00, it doesn't wrap. Second, try setting a death to 90000000000000000. Amaze at the runtime error '6's.


QUOTE(Oo.Mo0.oO @ Aug 1 2005, 06:48 PM)
Made it 5 minutes ago hope it helps!
[right][snapback]276348[/snapback][/right]


It's just the list of flingys.
Report, edit, etc...Posted by XxXFaNtA on 2005-08-02 at 05:18:12
user posted image
user posted image

by Praecipitator happy.gif
Report, edit, etc...Posted by Angelfarto on 2005-08-02 at 05:38:29
QUOTE(DT_Battlekruser)
Two things: If you do add 1 to a FF FF FF FF byte, you get 00 00 00 00, it doesn't wrap. Second, try setting a death to 90000000000000000. Amaze at the runtime error '6's.


yea I eventually tried it out for myself and saw the sad results.

ok so not thaat big anumber..jeez


still would like some explanation on all those properties you can edit in memcalc, i.e. Orders.dat: emulate?? Images.dat has no objects to edit to?? And all those other odd descriptions in the left pulldown list..or will v4.0 answer of these questions..
Report, edit, etc...Posted by Mp)PeazeL on 2005-08-02 at 05:54:45
WTFAGE

This is starting to kick in. I used MemCalc, please tell me what i did wrong here:

I chose 6B8FAC - Weapon Ground Attack under Units.Dat. Then i selected 037 - Zerg Zergling under -UNITS-.

Then i get this in return:

QUOTE
You need to modify the 1 byte value starting on byte 2 of deaths of -29572 for player 8 .

You need to modify the highlighted bytes:

DEATHS OF -29572 FOR PLAYER 8 :
00 00 00 00


And down the list i get all these hex numbers for the weapons:

QUOTE
00 - Gauss Rifle
01 - Gauss Rifle (Hero)
02 - C-10 Canister Rifle
03 - C-10 Canister Rifle (Hero - 30dmg)
04 - Fragmentation Grenades
05 - Fragmentation Grenades (Hero)
06 - Spider Mines (Mine Attack)
07 - Twin Autocannons
08 - Hellfire Missile Pack
09 - Twin Autocannons (Hero)
0A - Hellfire Missile Pack (Hero)
0B - Arclite Cannon

ect..


I goto the SF Trigger Converter, select 1 byte value, then i select byte 2
of deaths of unit #-29572 for player P8 (P8 is what i typed in if thats correct) then i select Set this value to 0B. Then i select Hexedecimal and then i hit GO. All i got was some annoying error saying this:

QUOTE
A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

/home/sites/homework/www/public_html/memcalc.py
  142            print "ERROR: Player number must be an integer.<br>"
  143    except ValueError:
  144        if err == 1:
  145            print "ERROR: Can't add a value longer than the value length.<br>"
  146        if err == 2:
err undefined

NameError: name 'err' is not defined
      args = ("name 'err' is not defined",)


Is it me that did something wrong, or is just this MemCalc thats bugged?
Report, edit, etc...Posted by sarami on 2005-08-02 at 06:17:44
QUOTE(Mp)PeazeL @ Aug 2 2005, 06:54 PM)
WTFAGE

This is starting to kick in. I used MemCalc, please tell me what i did wrong here:

I chose 6B8FAC - Weapon Ground Attack under Units.Dat. Then i selected  037 - Zerg Zergling under -UNITS-.

Then i get this in return:
And down the list i get all these hex numbers for the weapons:
I goto the SF Trigger Converter, select 1 byte value, then i select byte 2
of deaths of unit #-29572 for player P8 (P8 is what i typed in if thats correct) then i select Set this value to 0B. Then i select Hexedecimal and then i hit GO. All i got was some annoying error saying this:
Is it me that did something wrong, or is just this MemCalc thats bugged?
[right][snapback]276645[/snapback][/right]


M:6B8FAC, L:1, I:37 :
You need to modify the 1 byte value starting on byte 2 of deaths of -29572 for player 8.
SetDeaths(P8, SetTo, 2816, -29572);

Well, calculated from neither Memtrig nor Uberation. closedeyes.gif
Report, edit, etc...Posted by Mp)PeazeL on 2005-08-02 at 06:25:49
ty for that. But that still doesnt explain what i did wrong. How do you end up with all those calculations. What the hell did u do dude??????????????????????
Report, edit, etc...Posted by pimpinelephant on 2005-08-02 at 06:33:53
QUOTE(Mp)PeazeL @ Aug 2 2005, 02:54 AM)
WTFAGE

This is starting to kick in. I used MemCalc, please tell me what i did wrong here:

I chose 6B8FAC - Weapon Ground Attack under Units.Dat. Then i selected  037 - Zerg Zergling under -UNITS-.

Then i get this in return:
And down the list i get all these hex numbers for the weapons:
I goto the SF Trigger Converter, select 1 byte value, then i select byte 2
of deaths of unit #-29572 for player P8 (P8 is what i typed in if thats correct) then i select Set this value to 0B. Then i select Hexedecimal and then i hit GO. All i got was some annoying error saying this:
Is it me that did something wrong, or is just this MemCalc thats bugged?
[right][snapback]276645[/snapback][/right]

everything seems right except you need to type in 8 instead of P8
Report, edit, etc...Posted by Dr.Shotgun on 2005-08-02 at 06:34:02
No one has answered my question.
Again:
Does the AI react to changes in units, or does it go on in the exact same way. Does the script "load transport" or "unload transport" work with units that are transports but normally aren't?
Report, edit, etc...Posted by Mp)PeazeL on 2005-08-02 at 06:39:12
QUOTE
everything seems right except you need to type in 8 instead of P8


OMFG ty so much dude!!!!!!
Report, edit, etc...Posted by Oo.Mo0.oO on 2005-08-02 at 06:50:57
QUOTE(DT_Battlekruser @ Aug 2 2005, 02:04 AM)
Peazel you sort of got it.  The Firebat would be a few players on.
yeah you're talking out of your ass. tongue.gif  Two things:  If you do add 1 to a FF FF FF FF byte, you get 00 00 00 00, it doesn't wrap.  Second, try setting a death to 90000000000000000.  Amaze at the runtime error '6's.
It's just the list of flingys.

[right][snapback]276617[/snapback][/right]


Well then why hasn't it been added? Would have saved me a lot of time.
Just to make sure, that list is the list of the graphics, I.E. if you were to change a marine into a interceptor, you would use 30 as the hex value! Instead of critisizing it, thing about it.
Report, edit, etc...Posted by R(a)GeD(F) on 2005-08-02 at 07:46:23
see this modding is now screwd mellow.gif this even has things that modding dosnt
Report, edit, etc...Posted by Mp)PeazeL on 2005-08-02 at 08:59:51
lmao. Ive got this now. i fully understand the concept of weapon modifications. I got a hydralisk spitting out deadly psi storms. And a magical hydralisk using restoration spell on a unit he shoots at. this is awesome w00t.gif happy.gif w00t.gif biggrin.gif w00t.gif w00t.gif
Report, edit, etc...Posted by Hikari256 on 2005-08-02 at 09:04:36
QUOTE(Dr.Sh0tgun @ Aug 2 2005, 06:34 AM)
No one has answered my question.
Again:
Does the AI react to changes in units, or does it go on in the exact same way. Does the script "load transport" or "unload transport" work with units that are transports but normally aren't?
[right][snapback]276665[/snapback][/right]



Test it yourself. How would anyone know?
Report, edit, etc...Posted by Mp)PeazeL on 2005-08-02 at 09:31:18
whats the byte value to change weapon cooldown rate?
Report, edit, etc...Posted by hynk on 2005-08-02 at 10:41:23
QUOTE
Units don't have offsets
Oh okay, then whats this thing then, the numbers in red:
QUOTE
CONVERTING MEMORY OFFSETS TO DEATH/UNIT TRIGGERS:

Each death counter is a 4-byte long as I stated before and looks like this in hex:

00 00 00 00

Each byte corresponds to a setting in Starcraft.

Deaths start at the memory offset 00513874

Offset 00513874 is the orange byte shown here for deaths of P` unit id 0 (marine) 00 00 00 00

Offset 00513875 is the orange in P1 marine: 00 00 00 00

Offset 00513876 is the orange in P1 marine: 00 00 00 00

Offset 00513877 is the orange in P1 marine: 00 00 00 00


Offset 00513878 is the orange byte shown here for P2 deaths of unit id 0 (next long in order) (marine) 00 00 00 00

..and so on..

Each unit id goes through 48 memory offsets 4 bytes * 12 players. 48 is 30 in hexedecimal.

Using the formula, Offset 005138A4 is the first byte in P1 deaths of unit id 1.

Remeber the starting offset is 00513874.

Now, let's take the unit graphic offset for instance. It's offset, found by disciple, is 006b8ec8 (6b673c)

Now do some math. 006b8ec8 - 00513874 = 1A5654 = 1726036 in decimal. Divide by 48 to find how many unit ids until you reach this offset and you get 35959 R4 (35959 4/48) This means unit id 35948, and the first byte in.

Hence, UID 35949, Player 2, byte 1. The starting offset given corresponds to UID 0, the marine.

Therefore, the first byte of P2 deaths of unit 35949 is the Marine Unit Graphic.

When writing the trigger, Starforge generate an overflow, so convert the UID 35949 to a smaller negative number by subtracting 65536. 35949-65536 = -29587.

Our trigger then looks like this:

SetDeaths(P2,Setto,3,-29587);

???
Report, edit, etc...Posted by pimpinelephant on 2005-08-02 at 12:26:12
QUOTE(Dr.Sh0tgun @ Aug 2 2005, 03:34 AM)
No one has answered my question.
Again:
Does the AI react to changes in units, or does it go on in the exact same way. Does the script "load transport" or "unload transport" work with units that are transports but normally aren't?
[right][snapback]276665[/snapback][/right]

I think u would have to change the AI portion under units.dat to have the comp load units into a loadable tank, etc.
Report, edit, etc...Posted by DiscipleOfAdun on 2005-08-02 at 12:33:12
Finally, I can post.

QUOTE(m.r.bob @ Aug 1 2005, 12:19 PM)
But stat_txt.tbl is loaded into the memory in some way, so if we can modify the section of the memroy that loads the arr folder, why can't we modify the section that loads the rez folder?
[right][snapback]275980[/snapback][/right]
For the I don't know how many time, Iscript and all TBL files are outside the memory range of death counters. Their address is way up there.


QUOTE(Dr.Sh0tgun @ Aug 1 2005, 12:55 PM)
Does the AI keep acting like a modded-out map is just normal SC. I.E if i make guardians unit carriers, will the AI use them as such or not?
[right][snapback]276013[/snapback][/right]

I would have gotten to this sooner. Yes, it will take advantage of everything, but the right variables have to be set. Like the AI actions in Units.dat.

QUOTE(blizter @ Aug 1 2005, 02:13 PM)
We still dont know how to change a unit speed. The speed goes with the graphic of the unit.
[right][snapback]276063[/snapback][/right]
As said before, unit speed is either Flingy or Iscript. Iscript deal with units that walk. Flingy is flying and hovering units. Changes are only applied after the triggers, because units already have their own individual speed when created in their unit structure.


QUOTE(DT_Battlekruser @ Aug 1 2005, 03:40 PM)
Units don't have memory offsets.
[right][snapback]276147[/snapback][/right]


What about individual units? They each have their own data.

QUOTE(R(a)GeD(F) @ Aug 2 2005, 05:46 AM)
see this modding is now screwd  mellow.gif this even has things that modding dosnt
[right][snapback]276691[/snapback][/right]

IScript, .Tbl files, .Bin layouts, .Pcx files, .Grp graphics, Button Sets, Unit/Upgrade/TechResearch/TechUse Requirements. I rest my modding case. And I do know what this can do other that most modding(not hex editing the exe, that can do almost anything, well anything this can and more).

2 posts back, those are death counters for the units, not offsets that contain major data about that unit. Overall unit properties are in units.dat. Individual are in the unit structure.
Report, edit, etc...Posted by Kow on 2005-08-02 at 12:48:06
I was bored so I Went through and ordered (I'm sure its been done, But I didn't know that at hte time) and labeled the number of deahts (If I understand it properly, and that it starts at 0 and increases 256 deaths per weapon)

Here ya go smile.gif


Edit, A slight mixup, Had some arrows pointing ot places I forgot to add in, cant now, but it's all after the first L2 Research. I'll fix When I get back. (It throws off the deaths accompanied with it)\

Edit: Fixed
Report, edit, etc...Posted by DT_Battlekruser on 2005-08-02 at 13:39:26
QUOTE(pimpinelephant @ Aug 2 2005, 03:33 AM)
everything seems right except you need to type in 8 instead of P8
[right][snapback]276664[/snapback][/right]


Correct. It tries to take int(value) so it crashes if there's non-numeric values in there.

QUOTE(Dr.Sh0tgun @ Aug 2 2005, 03:34 AM)
No one has answered my question.
Again:
Does the AI react to changes in units, or does it go on in the exact same way. Does the script "load transport" or "unload transport" work with units that are transports but normally aren't?
[right][snapback]276665[/snapback][/right]


It should; because unless I'm mistaken, the tank is still a dropship. As in isn't it a dropship that looks like a tank?


QUOTE(hynk @ Aug 2 2005, 07:41 AM)
Oh okay, then whats this thing then, the numbers in red:

???
[right][snapback]276739[/snapback][/right]


The memory offset for shield toggle, plus 1 for each UID. Just use MemCalc.


QUOTE(Kow @ Aug 2 2005, 09:48 AM)
I was bored so I Went through and ordered (I'm sure its been done, But I didn't know that at hte time) and labeled the number of deahts (If I understand it properly, and that it starts at 0 and increases 256 deaths per weapon)

Here ya go smile.gif
Edit, A slight mixup, Had some arrows pointing ot places I forgot to add in, cant now, but it's all after the first L2 Research. I'll fix When I get back. (It throws off the deaths accompanied with it)
[right][snapback]276768[/snapback][/right]


Yeah, just look at the byte values for Weapon in MemCalc, or the list of weapons. Odd effects for unused weapons though.
Report, edit, etc...Posted by Dr.Shotgun on 2005-08-02 at 13:53:58
Thanks DT.
Report, edit, etc...Posted by Kow on 2005-08-02 at 13:56:52
QUOTE(DT_Battlekruser @ Aug 2 2005, 01:39 PM)
  Odd effects for unused weapons though.[/color]
[right][snapback]276795[/snapback][/right]

Yeah, I documented some names though, they made rock doodad sprites... I think it's rock doodad, Idk.

(Null), Terran Marine, Alan Schezar, SCience Vessel, Norad 11, Jim Raynor, Terran Dropship (They're all in a row after the last unit in my list)

And Rescue passive made the macine addon sprite.

Fixed the Notepad, posting observations afterwards.

I (I as in Mrrll, Probably Kamikaze.Kow, and I) noticed that any splash attacks that actually were attacks (IE: Not spells, Psionic storm, Lurker Spines. Rather than Nuclear Strike, or Psionic storm) had no splash. It attacked a unit, and damaged that unit alone.

Ps: Stasis and Maelstrom are good hot and cold glow effects. Psionic storm is just an orb, so it looks cool with a cloaked wraith smile.gif
Report, edit, etc...Posted by hynk on 2005-08-02 at 14:29:26
QUOTE
The memory offset for shield toggle, plus 1 for each UID. Just use MemCalc.
The reason I don't want to use MemCalc is I'm trying to edit something that requires P9-12 Death Counts, in which, MemCalc can't calculate those yet.
Report, edit, etc...Posted by DT_Battlekruser on 2005-08-02 at 16:42:49
You can't edit something with P9-12 death counts in the first place. What's the point of knowing the memory offset?
Report, edit, etc...Posted by glytchur on 2005-08-02 at 16:54:31
is there a way around p9-12?
Next Page (31)