[skip all navigation]

Moar modding questions

Pages: 1 2 3 » 5 >
Creator: HailFire
Time: Jun 11 2008, 9:50 pm

Post #1     HailFire Jun 11 2008, 9:50 pm

[Avatar]
offlinecontact
Rank: Regular
So I realized I always seem to start these threads with 'so', wtf I'm finally getting back to that mod I've been working on.

I'd post related questions on the other thread, but I've been a lazy fuck who can't keep commitments busy, and due to the thread being old and dead, I decided to make a new one.

The mod is planned to be sort of cat-and-mouseish, in a sense; One faction is almost overwhelmingly strong, while the other one employs subterfuge and trickery to defeat their foes; having a variety of specialized units, but weak ones on average. Think sort of a cross between the Nerien Guard (Project Miranda) and the Betrayers (Antithesis Rising) (the two mods which inspired this).

One of the main things I want to have going (but haven't the faintest idea how to do it), is making one of the factions (guess which) node-independant, aka they generate their own resources (again, Project Miranda). Since I don't want to implode my brain trying to crack open PM and figuring it out, could someone lend me a hand?

Top

Post #2     A_of-s_t Jun 11 2008, 10:01 pm

[Avatar]
Rank: Elite
offlinecontact
Rank: Veteran
Do you mean that when they build a building, they get minerals every "turn"? If so, use triggers. Detect how many buildings and give minerals based on that.

Top

Post #3     HailFire Jun 11 2008, 10:03 pm

[Avatar]
offlinecontact
Rank: Regular
Quote from A_of-s_t
Do you mean that when they build a building, they get minerals every "turn"? If so, use triggers. Detect how many buildings and give minerals based on that.

Triggers seem to imply specialized maps, and I know these aren't neccessary. How does one apply triggers to modding?

Top

Post #4     A_of-s_t Jun 11 2008, 10:07 pm

[Avatar]
Rank: Elite
offlinecontact
Rank: Veteran
Triggers/melee.trg

Look for that in winmpq. If you make the triggers in Staredit, export them as .trg and open it up with notepad and remove the first 8 characters (including the spaces). This is called removing the header (which is 8 bytes long).

Voila, you now have triggers in melee and free for all.

Top

Post #5     HailFire Jun 11 2008, 10:09 pm

[Avatar]
offlinecontact
Rank: Regular
Intruiging, I'll have to try that.

Buahahaha. :sly:

Top

Post #6     ShadowFlare Jun 12 2008, 11:08 am

[Avatar]
offlinecontact
Rank: Veteran
lol, don't use Notepad to remove that. If you must use a text editor to do it instead of using a hex editor, use Wordpad, I suppose (though I haven't confirmed it still works to use it for that kind of editing on more recent versions). Using Notepad will most definitely corrupt a binary file. (.trg files aren't text, right?)

Top

Post #7     MC²poiuy_qwert Jun 12 2008, 3:04 pm

[Avatar]
PyMS and ProTRG developer
offlinecontact
Rank: Regular
Also, if the triggers have strings and Create Unit With Properties slots in it then just removing the header will not work. You'll either need to remove the strings and CUWP slots manually or in a map/trigger editor before stripping the header (or you can just use a program to do it all for you).

Top

Post #8     HailFire Jun 12 2008, 8:56 pm

[Avatar]
offlinecontact
Rank: Regular
Craptacular TrigEdit in SCMDraft 2.0 (Beta 0.8.0) won't let me save as triggers.

New ver/alternate trigger editor?

Top

Post #9     Lord Agamemnon Jun 13 2008, 12:05 am

[Avatar]
offlinecontact
Rank: Member
*Lightning flash. Voice booms from heavens:*
The Project Miranda triggers relating to Nerien resource generation are as follows:

Code

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Always();

Actions:
    Set Deaths("Current Player", "Torrasque (Ultralisk)", Add, 1);
    Set Deaths("Current Player", "Yggdrasill (Overlord)", Add, 1);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Deaths("Current Player", "Torrasque (Ultralisk)", At least, 120);

Actions:
    Set Deaths("Current Player", "Torrasque (Ultralisk)", Set To, 0);
    Set Resources("Current Player", Add, 1, ore);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Command("Current Player", "Zerg Spawning Pool", At least, 1);
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Resources("Current Player", Add, 3, gas);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Command("Current Player", "Zerg Spawning Pool", At least, 2);
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Resources("Current Player", Add, 3, gas);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Command("Current Player", "Zerg Spawning Pool", At least, 3);
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Resources("Current Player", Add, 3, gas);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Deaths("Current Player", "Yggdrasill (Overlord)", Set To, 0);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

where Spawning Pools are the Chemistry Labs. Iggy and Torra are essentially just placeholders; they're not used as anything other than for their death counters. And hyper triggers are running on all of that mess, too, since PM has some other triggers that actually need them. 56 and 120 are arbitrary numbers chosen for the duration they put between successive generation cycles.

Top

Post #10     MC²poiuy_qwert Jun 13 2008, 2:08 am

[Avatar]
PyMS and ProTRG developer
offlinecontact
Rank: Regular
Quote from HailFire
Craptacular TrigEdit in SCMDraft 2.0 (Beta 0.8.0) won't let me save as triggers.

New ver/alternate trigger editor?

Save the map with the triggers then open it with staredit and export the triggers there.

Top

Post #11     HailFire Jun 13 2008, 2:18 am

[Avatar]
offlinecontact
Rank: Regular
Quote from Lord Agamemnon[MM]
*Lightning flash. Voice booms from heavens:*
The Project Miranda triggers relating to Nerien resource generation are as follows:

Code

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Always();

Actions:
    Set Deaths("Current Player", "Torrasque (Ultralisk)", Add, 1);
    Set Deaths("Current Player", "Yggdrasill (Overlord)", Add, 1);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Deaths("Current Player", "Torrasque (Ultralisk)", At least, 120);

Actions:
    Set Deaths("Current Player", "Torrasque (Ultralisk)", Set To, 0);
    Set Resources("Current Player", Add, 1, ore);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Command("Current Player", "Zerg Spawning Pool", At least, 1);
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Resources("Current Player", Add, 3, gas);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Command("Current Player", "Zerg Spawning Pool", At least, 2);
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Resources("Current Player", Add, 3, gas);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Command("Current Player", "Zerg Spawning Pool", At least, 3);
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Resources("Current Player", Add, 3, gas);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

Trigger("All players"){
Conditions:
    Deaths("Current Player", "Yggdrasill (Overlord)", At least, 56);

Actions:
    Set Deaths("Current Player", "Yggdrasill (Overlord)", Set To, 0);
    Preserve Trigger();
}

//-----------------------------------------------------------------//

where Spawning Pools are the Chemistry Labs. Iggy and Torra are essentially just placeholders; they're not used as anything other than for their death counters. And hyper triggers are running on all of that mess, too, since PM has some other triggers that actually need them. 56 and 120 are arbitrary numbers chosen for the duration they put between successive generation cycles.


/worship

In unrelated news, you never responded to that PM I sent you about that PM bug. :P

Top

Post #12     HailFire Jun 13 2008, 3:52 am

[Avatar]
offlinecontact
Rank: Regular
About the whole beheading dealie: When I opened WordPad and loaded up the .trg file, 90% of the characters were moonspeak (represented by small squares, as my computer isn't moonspeak-compatible). I backspaced out the first 8 characters (one of them being a blank space), but the triggers didn't fire. :dontgetit:

I'll try only deleting it up to (and including) the space, but if that doesn't work... :ermm:

EDIT: Ok, no space this time? :crazy:

Aaanyway, first eight five characters of melee.trg: qw˜6 (6,7,8 won't copy/paste)
This post was edited 1 time, last edit by HailFire: Jun 13 2008, 3:59 am.

Top

Post #13     O)FaRTy1billion Jun 13 2008, 5:32 am

[Avatar]
‮.rapsdleF
offlinecontact
Rank: Elite
Uh. Or you could use a hexeditor and not worry about it. Programs work, too.

TinyMap2 - Latest in map compression! [ 8/26/12 - New build! Potentially fixed Win7 crash ]
EUD Action Enabler - Lightweight EUD/EPD support! (ChaosLauncher/MPQDraft support!)
EUDDB - topic - Help out by adding your EUDs! Or Submit reference files in the References tab!
MapSketch - New image->map generator!
EUDTrig - topic - Quickly and easily convert offsets to EUDs! (extended players supported)
SC2 Map Texture Mask Importer/Exporter - Edit texture placement in an image editor!
(user posted image) This page has been viewed (user posted image) times!
Top

Post #14     HailFire Jun 13 2008, 7:32 am

[Avatar]
offlinecontact
Rank: Regular
Quote from O)FaRTy1billion[MM]
Uh. Or you could use a hexeditor and not worry about it. Programs work, too.

Yeeeaaaaaaahh.

Care to hook me up with one? :wtfage:

Top

Post #15     O)FaRTy1billion Jun 13 2008, 7:43 am

[Avatar]
‮.rapsdleF
offlinecontact
Rank: Elite
I could write one... I guess that's one of the only good things about VB. :P Make a program in 5 seconds. (I could do it in C, but I already have VB code for another project to do it.)

Would you need it to strip unusable data like strings and CUWP slots? Or are you knowing enough not to use them?

TinyMap2 - Latest in map compression! [ 8/26/12 - New build! Potentially fixed Win7 crash ]
EUD Action Enabler - Lightweight EUD/EPD support! (ChaosLauncher/MPQDraft support!)
EUDDB - topic - Help out by adding your EUDs! Or Submit reference files in the References tab!
MapSketch - New image->map generator!
EUDTrig - topic - Quickly and easily convert offsets to EUDs! (extended players supported)
SC2 Map Texture Mask Importer/Exporter - Edit texture placement in an image editor!
(user posted image) This page has been viewed (user posted image) times!
Top

Post #16     HailFire Jun 13 2008, 7:55 am

[Avatar]
offlinecontact
Rank: Regular
Quote from O)FaRTy1billion[MM]
I could write one... I guess that's one of the only good things about VB. :P Make a program in 5 seconds. (I could do it in C, but I already have VB code for another project to do it.)

Would you need it to strip unusable data like strings and CUWP slots? Or are you knowing enough not to use them?

I know enough to not know what you're talking about. :wtfage:

Srsly, I just need it to allow me to use triggers in mods (although I don't know why you can't just directly plug the .trg into the .mpq without fucking with it first).

Top

Post #17     O)FaRTy1billion Jun 13 2008, 8:01 am

[Avatar]
‮.rapsdleF
offlinecontact
Rank: Elite
Ok. I have the differences somewhere in the wiki, but I'll just say them.

StarEdit *.trgs:
- Contain an 8-byte header.
- Contain any Create Unit With Property-trigger property information.
- Contain any strings that are used by that trigger.

GOT *.trgs:
- ONLY contain TRIG data. Nothing more. No header, no strings, no unit property information.

TinyMap2 - Latest in map compression! [ 8/26/12 - New build! Potentially fixed Win7 crash ]
EUD Action Enabler - Lightweight EUD/EPD support! (ChaosLauncher/MPQDraft support!)
EUDDB - topic - Help out by adding your EUDs! Or Submit reference files in the References tab!
MapSketch - New image->map generator!
EUDTrig - topic - Quickly and easily convert offsets to EUDs! (extended players supported)
SC2 Map Texture Mask Importer/Exporter - Edit texture placement in an image editor!
(user posted image) This page has been viewed (user posted image) times!
Top

Post #18     HailFire Jun 13 2008, 8:03 am

[Avatar]
offlinecontact
Rank: Regular
Quote from O)FaRTy1billion[MM]
Ok. I have the differences somewhere in the wiki, but I'll just say them.

StarEdit *.trgs:
- Contain an 8-byte header.
- Contain any Create Unit With Property-trigger property information.
- Contain any strings that are used by that trigger.

GOT *.trgs:
- ONLY contain TRIG data. Nothing more. No header, no strings, no unit property information.

So I just need to clip the first 8 characters and any present strings, once I get a hex editor, amirite?

Top

Post #19     O)FaRTy1billion Jun 13 2008, 8:20 am

[Avatar]
‮.rapsdleF
offlinecontact
Rank: Elite
Or use this that I just made: Trg Stripper.

I didn't write any documentation, so I'll say how to use it here...
Hit 'Open' and find a *.trg file you want to strip.
Upon loading, the file will be removed of any information that should not be in GOT *.trgs (header, strings, or CUWP slots.) It will also say whether or not the *.trg header was present.
Hit 'Save' and give it a new filename to save the stripped file.

If it asks for comctl32.ocx or whatever, google it or post here and I'll upload it.

TinyMap2 - Latest in map compression! [ 8/26/12 - New build! Potentially fixed Win7 crash ]
EUD Action Enabler - Lightweight EUD/EPD support! (ChaosLauncher/MPQDraft support!)
EUDDB - topic - Help out by adding your EUDs! Or Submit reference files in the References tab!
MapSketch - New image->map generator!
EUDTrig - topic - Quickly and easily convert offsets to EUDs! (extended players supported)
SC2 Map Texture Mask Importer/Exporter - Edit texture placement in an image editor!
(user posted image) This page has been viewed (user posted image) times!
Top

Post #20     HailFire Jun 13 2008, 6:58 pm

[Avatar]
offlinecontact
Rank: Regular
Another, quicker (?) question:

How do I add/remove supply giving powers on units/buildings? (ex. pylon, overlord)

Top
0 members in this topic (italic members are currently writing a reply): None
+ guest(s)


[07:55 pm]
jjf28 -- prolly the 'move to index' scmdraft needed :)
[07:51 pm]
jjf28 -- guess i'll replace that button then, have greater modeless schemes to hatch
[07:50 pm]
jjf28 -- ah, ty
[07:20 pm]
Devourer -- "gaze into the precipice long enough, and the precipice will gaze back"
[07:15 pm]
O)FaRTy1billion -- dead ... lolwut
[07:11 pm]
O)FaRTy1billion -- The shoutbox is dad, too
[07:06 pm]
Devourer -- (or at least a mobile version of the shoutbox)
Please log in to shout.