Staredit Network > Forums > SC1 Mapping Tools > Topic: SCMC (Tentative Name)
SCMC (Tentative Name)
Jun 10 2012, 5:21 pm
By: Cinolt  

Jun 10 2012, 5:21 pm Cinolt Post #1



SCMC is a tool (though somewhat more of an API) to compile binary trigger, location, and unit data into a map systematically, allowing all of the flow control, math functions, etc. that the C/++ language provides.

First you need a C++ compiler (the rest of the instructions assume GCC (Minimalistic GCC for Windows), remember to check the option for the C++ compiler. You need to include the directory to the GCC executables to your PATH environment variable. For Windows, assuming installation at C:\MinGW, the directory is C:\MinGW\bin. So if the existing contents of the PATH environment variable is ABC123, then the new PATH environment variable should read C:\MinGW\bin;ABC123).

Unpack the scmc files anywhere (dirty hack for Windows; I stole SFmpq.dll from MapSketch because compiling it gave me a runtime error :x). Read the header files (files that end in .h) for the C prototypes/enums.

Use a batch file, or use Notepad++ with the NppExec plugin (similar to MacroTriggers' instructions), using this script:
Code
cd "$(CURRENT_DIRECTORY)"
NPP_SAVE
g++ -I. -L. -lSFmpq -lscmc "$(FILE_NAME)" -o scmc.exe
./scmc.exe $(NAME_PART)pre.scx $(NAME_PART).scx
xcopy /y $(NAME_PART).scx "C:\Program Files (x86)\StarCraft\Maps"

The last command doesn't work as it is from lack of privileges; installing StarCraft in an alternate directory would remedy this problem.

I honestly don't have the motivation to explain it more formally, but I'll explain details on a question/answer basis. There's example files tankdefense.cpp and tankdefensepre.scx. Open it with Notepad++ and run the script to get the result, tankdefense.scx.

Post has been edited 5 time(s), last time on Jul 4 2012, 12:48 am by yoonkwun.



None.

Jun 10 2012, 5:50 pm Roy Post #2

An artist's depiction of an Extended Unit Death

Most mappers on Windows 7 have SC installed somewhere other than the Program Files directory for specifically that privileges reason. I personally put all my games in C:\Games.

So... This program is to code SC map data in C? Is there some advantage to this over just using an editor, excluding familiarity?




Jun 10 2012, 5:58 pm Cinolt Post #3



Advanced maps with more sophisticated triggers (location grids, binary countoffs) require many (in the order of thousands) redundant triggers, which are made systematically. Basically it has the same advantage as the other trigger compilers (MacroTriggers, ProTRG, Oreo Triggers) except mine compiles the data directly into the binary map, not requiring the need for copy and pasting text triggers, and has builtin support for locations/units (for hybrid grids).



None.

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[11:39 pm]
Corbo -- I wouldn't go to say it's unbelieveable but silly it definitely is
[11:39 pm]
Corbo -- but yes, the plot is silly
[11:38 pm]
Corbo -- don't hate
[11:38 pm]
Corbo -- Salazar was great
[11:25 pm]
KrayZee -- The President of the United States only sending only 1 man equipped with a pistol to rescue his daughter? Then Leon has to deal with midget Napoleon, how can you take that seriously? :P
[11:23 pm]
KrayZee -- The plot in Resident Evil 4? It's just too silly.
[11:07 pm]
Corbo -- You don't find that believeable?
[07:38 pm]
Wing Zero -- I played 6 for a bit but wasn't too happy with it. Haven't played another one since then though.
[08:18 am]
KrayZee -- If Resident Evil 4 is getting a remake, they better make the plot believable. Like actually send an entire team to rescue the President's daughter but the team was ambushed and all equipment were lost. Leon is the only survivor and only kept a handgun. Later he would hitchhike and get picked up. He then asked to be dropped off the nearest town.
[04:01 am]
RIVE -- The significance is lessened by the probability of future RE titles ignoring either conclusion in favor of a rewrite anyway.
Please log in to shout.


Members Online: bobik308407, Roy