Staredit Network > Forums > Null > Topic: Community map editor project
Community map editor project
Dec 20 2008, 3:38 am
By: scwizard
Pages: < 1 2 3 4 5 >
 

Dec 21 2008, 5:47 pm scwizard Post #41



Quote from Elvang
can just use staredit\scenario.chk as the filename to open it every time?
That's what I did, it works. If someone makes a trigger editor with support for adding WAVs to the map then they might want to do something more elaborate, but for what your doing you probably don't have to worry about messing around with the listfile.



None.

Dec 21 2008, 5:59 pm KrayZee Post #42



scwizard, is it possible that my ancient wishes for scmdraft can be possible in this community editor?



None.

Dec 21 2008, 6:06 pm scwizard Post #43



Sure it's possible, as this is a new program, not hinged by the shackles of existing programs.

However I'm not sure how probable those wishes are.

However if you help they are more probable!

EDIT: Pick a module people!
It's great to hear the you're interested, but you should really look through the list and pick something you wish to work on. If your inexperienced it's probably best to stick with the invisible portions, to avoid having to deal with graphics and such.



None.

Dec 21 2008, 7:08 pm A_of-s_t Post #44

aka idmontie

PyTRG. There, your trigger editor is done.



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Dec 21 2008, 7:28 pm scwizard Post #45



Quote from A_of-s_t
PyTRG. There, your trigger editor is done.
Sounds great, but I can't get it to run.



None.

Dec 21 2008, 7:31 pm Elvang Post #46



Quote from Wiki
Each section starts off with a 4 byte string, and a 4 byte unsigned long.
...
The 4 byte unsigned long indicates how many bytes the section contains, not including the header itself.
...
For easy reference, since each trigger contains 2400 bytes, the amount of triggers can be gotten by taking the section length and dividing by 2400.

Does the above mean that the trigger limit for a map is 1789569? Didn't see anything listed for trigger limit in the map limits article, so I'm assuming going over the limit will cause some side effects if starcraft doesn't crash/error out.

EDIT: I think starcraft would read the 1789569th trigger, then interpret the next 8 bytes as another section header. At which point it'd probably say the map is invalid unless you crafted the 1789570th trigger onwards.

Post has been edited 1 time(s), last time on Dec 21 2008, 7:37 pm by Elvang.



None.

Dec 21 2008, 7:38 pm Biophysicist Post #47



I'll do the briefing editor. Does anyone know how I would display the portraits for the preview function someone mentioned?



None.

Dec 21 2008, 7:44 pm Elvang Post #48



You would need to load the mpq that stores the portraits and load the related files into memory. You'd also have to find a library or the file specifications for smk so you can draw them to the screen.



None.

Dec 21 2008, 7:46 pm A_of-s_t Post #49

aka idmontie

NEVERMIND.



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Dec 21 2008, 7:47 pm Biophysicist Post #50



Quote from Elvang
You would need to load the mpq that stores the portraits and load the related files into memory. You'd also have to find a library or the file specifications for smk so you can draw them to the screen.

Is smk a Blizzard format or a public format?



None.

Dec 21 2008, 7:49 pm A_of-s_t Post #51

aka idmontie

Quote from name:TassadarZeratul
Quote from Elvang
You would need to load the mpq that stores the portraits and load the related files into memory. You'd also have to find a library or the file specifications for smk so you can draw them to the screen.

Is smk a Blizzard format or a public format?
Public. Look up smacker tools -- however, Blizzard used an old version of Smacker Tools. I believe Corbo has the correct version in his modding pack in the SEN DLDB.



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Dec 21 2008, 9:15 pm Elvang Post #52



Ok, I've been messing with SFileReadFile for awhile now, and it seems that no matter what I do I end up with the app ending with error 0xC0000005 (memory access violation). Example of code:
Code
MPQHANDLE the_chk = NULL;
SFileOpenFileEx(the_mpq, "staredit\\scenario.chk", NULL, &the_chk);
DWORD the_chk_NBR = 0;
DWORD test_that_stuff = 0;
SFileReadFile(the_chk, &test_that_stuff, sizeof(DWORD), &the_chk_NBR, NULL);

What am I doing wrong here?




Dec 21 2008, 9:36 pm scwizard Post #53



Technical questions like this are:
a. probably best answered over AIM/PM etc (have I PMed you my contact info? if I haven't I will in a second)
b. I'm not available for the support I mentioned until after monday.

EDIT: Or you can post here and hope someone else gets to them, I guess there's no problem with that.



None.

Dec 21 2008, 10:13 pm Falkoner Post #54



Making these small programs sounds annoying to work with, why not just have individual members work on different functions or classes in the program then putting it altogether into a single program?



None.

Dec 21 2008, 10:27 pm A_of-s_t Post #55

aka idmontie

Quote from Falkoner
Making these small programs sounds annoying to work with, why not just have individual members work on different functions or classes in the program then putting it altogether into a single program?
He doesn't want everyone to be restricted to writing in C++ or C#.

Quote from Elvang
Ok, I've been messing with SFileReadFile for awhile now, and it seems that no matter what I do I end up with the app ending with error 0xC0000005 (memory access violation). Example of code:
Code
MPQHANDLE the_chk = NULL;
SFileOpenFileEx(the_mpq, "staredit\\scenario.chk", NULL, &the_chk);
DWORD the_chk_NBR = 0;
DWORD test_that_stuff = 0;
SFileReadFile(the_chk, &test_that_stuff, sizeof(DWORD), &the_chk_NBR, NULL);

What am I doing wrong here?
Did you set up a memory buffer? I have a sample program written by Shadowflare that I can post later today that demonstrates how to use her .dll's.



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Dec 22 2008, 4:11 am A_of-s_t Post #56

aka idmontie

Double Post FTW.

How to extract using Storm.dll. Created by the awesome Justin Olbrantz(Quantam):
[attach=2293]

Attachments:
dumbextr.zip
Hits: 2 Size: 4.28kb



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Dec 23 2008, 5:03 am scwizard Post #57



By the way, I'm done with finals and everything, so anyone participating feel free to contact me for support.



None.

Dec 23 2008, 6:39 am Elvang Post #58



Quote from A_of-s_t
Did you set up a memory buffer? I have a sample program written by Shadowflare that I can post later today that demonstrates how to use her .dll's.
Thanks for the program, didn't help my particular problem but I gained some insight into how a few of the other functions work. Turns out there's a minimum size for the read buffer for SFileReadFile, somewhere between 3072 and 4096(no upper limit?). I can now open mpqs, open the files in mpqs, read sections/whole file from mpq, write the scenario.chk to disc, and find the different sections, yay.

Quote from scwizard
Will split maps into the invisible and visible portions and graft those portions together again. Goal is to make it so that the visible portion of the map can be edited in SCMDraft for now, without running the risk of getting the invisible portion corrupted due to opening it in SCMDraft.
Can you elaborate on splitting the map up by the visible/invisible portions? As in each module will be sent the data from their related sections?



None.

Dec 23 2008, 6:57 am Kellimus Post #59



Quote from scwizard
Ok here's the deal. I think we should make a new map editor. SCMDraft is great and all, but there is a lot of room for improvement.

Now making a full fledged editor by yourself is a very difficult task, so I thought the community could come together and do it modularly. Each person could make a different editor, and each editor would edit a different portion of the map. For instance one person could make a terrain editor. Another could make a trigger editor. This way people can focus on doing one thing right (for example the person making the mission briefing editor might be able to add in a preview function) instead of trying to do everything.

So I'd like volunteers for this project. Here are the details:
*Select a single orange section in the collapse box below. (I might not mind if you select more than one, but try to avoid picking too many).
*You can code an editor for that section in whatever programming language you choose.
*The editor must be open source.
*Must interpret protected maps as protected and unprotected maps as unprotected (as in respect protection, but don't confuse a unprotected compressed map with a protected one)

If you adhere to those details then you'll earn:
*Unlimited programming help (many languages offered) from me, and perhaps Doodle77 to.
*When you finish the program I'll mail you a box of homemade brownies/cookies I swear.
*Other nice things perhaps.

So lets gather together as a community, build some awesome map making tools and help drive starcraft map making forward!

The various available modules, tell me if I missed any


Project claims:

scwizard: A map grafter. Will split maps into the invisible and visible portions and graft those portions together again. Goal is to make it so that the visible portion of the map can be edited in SCMDraft for now, without running the risk of getting the invisible portion corrupted due to opening it in SCMDraft. Will also possibly have other functionality. C++ and MFC.

A_of-s_t: Expressed active interest in contributing to this collaboration. "What ever I feel like making at the time is exactly what I'll do. I'm flaky like that."

Elvang: Expressed strong interest in contributing to this collaboration.
ClansAreForGays: Expressed interest in contributing to this collaboration.
TassadarZeratul: Expressed interest in contributing to this collaboration.

I honestly think that doing it the COM way would be better....

And its going to be hectic unless you define a standard you should all follow and by standard I mean a set way of how your 'module' (I still think COM would be better) should be structured, kind of like CSS defines tags in HTML, you should have a standard your programmers follow.... For portability ease and speed of the program.



None.

Dec 23 2008, 7:04 am A_of-s_t Post #60

aka idmontie

Quote from Kellimus
And its going to be hectic unless you define a standard you should all follow and by standard I mean a set way of how your 'module' (I still think COM would be better) should be structured, kind of like CSS defines tags in HTML, you should have a standard your programmers follow.... For portability ease and speed of the program.
The way he wants it done means its not necessary to make a "standard."



Personal GitHub
Starcraft GitHub Organization - Feel free to request member status!
TwitchTV

Options
Pages: < 1 2 3 4 5 >
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[09:18 pm]
Ultraviolet -- 🔪🐈
[12:34 pm]
NudeRaider -- curiosity kills the cat!
[06:18 am]
Sylph-Of-Space -- No complaints here, i'm just curious!
[2024-5-18. : 11:05 pm]
Ultraviolet -- :wob:
[2024-5-18. : 3:55 pm]
Zoan -- :wob:
[2024-5-18. : 10:34 am]
NudeRaider -- SEN doesn't rely on spammers initiate its sleep cycle. It hat fully automated rest and clean-up phases. Please understand that this is necessary for the smooth operation of the site. Thank you.
[2024-5-18. : 3:45 am]
Sylph-Of-Space -- Does the shoutbox get disabled when there's spammers?
[2024-5-17. : 6:47 am]
NudeRaider -- lil-Inferno
lil-Inferno shouted: nah
strong
[2024-5-17. : 5:41 am]
Ultraviolet -- 🤔 so inf is in you?
[2024-5-17. : 4:57 am]
O)FaRTy1billion[MM] -- my name is mud
Please log in to shout.


Members Online: Bar Refaeli, RIVE