|
|
|
|
# 1 |
|
Guest
|
Homeworld2 Level Editor
In honor of Homeworld1's MissionMan Editor, I present to you
Mission Boy This is a pre-pre-pre alpha release of a visual mission editor for Homeworld2. It features... well not much, but it has a point and click interface allowing you to create maps with the following: Player Start Positions Asteroids Clouds Dust Clouds Megaliths Nebulae Ships Pebbles Music Backgrounds It only works if you do everything right [which isnt always the way it LOOKS like it should be done] , but if theres need I'll release new versions which are more stable. At the very least you can take visual representations of asteroids and place them and edit them later. Edit: Current Version: 0.04a Last edited by IWAssassin : 24th Oct 03 at 9:49 AM. |
|
|
# 4
|
|
Guest
|
Tutorial: Creating your very first Mission Boy map.
1) Start Mission Boy 2) I like to set my globals first, so click on the Set Globals button. 3) You are faced with a bunch of fields to fill out: FileName: Text, the name of the mission as it appears in the game itself. For the Tutorial name this "Tutorial01" Players: Maximum number of players allowed in the map. The tutorial uses 2. Numbers 2-6 are legal. SizeX: The unsigned maximum size of the level in the X direction, in meters. Whole numbers only. SizeY: The unsigned maximum size in the Y direction. Note 30000 represents a field from -30000 to 30000. SizeZ: Same thing in the Z direction. For purposes of this tutorial set all these to 20000. Background: Text - Name of a valid folder within the Data/Background directory of either your Homeworld2 folder or the Homeworld2.BIG file. For purposes of this file set to "m15" CameraMin: Integer - this represents the minimum distance from a focused object you can view in the sensors manager. For tutorial set to 10000. Any positive number should work. CameraMax: Integer - this represents the maximum distance from a focused object you can see in the sensors manager. Leave at 40000 for this tutorial. Any positive number should work. Music: Text - Valid path to a FDA Audio file in the Data/Music directory. Do NOT use the extension. That wasnt too hard was it? Hit the X to close the window [forgot to fix Done]. First thing's first is the Player Start Positions. Click on Player Start. Now go down to Item Type and select Player 1. This will bring up a popup box with 3 values for direction. Generally you'll only want to edit "Orientation" using a number 0-360, and put 0 in for the rest. Numbers out of this range will cause errors. Hit Done when complete You can now click anywhere in the black field to place Player 1's Start Position. As of this time there is no UNDO property so make sure you have it right before you click, or you'll have to manually edit the .level file later. Once Player 1's start position is set, do the same for player 2. Congrats. At this point the level SHOULD in theory work, however it would be pointless. So we're going to add some asteroids. Click on the Asteroid Radio Button. Under Item Type, Select Asteroid 3. A box will pop up asking for the % RUs. This is a multiplier. 100 means the asteroid will hold the default amount of RUs [9000]. 150 will hold 13500RUs and 10 will hold 900RUs Put in any number. Place a bunch of asteroids all over the map, just as you placed start positions. When you're done, you can now compile the level. Click the Save Level button. Levels must be saved in the Homeworld2\Data\leveldata\multiplayer\deathmatch directory. From here you should be able to load your very own first map, a battle over Hiigara with some asteroids floating around randomly. If there are errors Homeworld2 will fail to load and will give the rather cryptic reason in the file Homeworld2\Bin\Release\HW2.log - open the file in notepad and paste the contents here if you cant figure out the problem. Last edited by IWAssassin : 23rd Oct 03 at 8:07 AM. |
|
|
# 6
|
|
lol 1990s
Join Date: Sep 2003
Location: Bel-air
|
This is wonderful. Absolutely wonderful. You are a total god. This makes things so much easier for a novice map maker like me. I do have a few bugs to point out:
1. On the Set Globals window, as you said, the Done button doesn't work. You told us to just click on the "x" to save the changes. This doesn't work. All of the changes to the background, music, etc. are resetted. 2. When you want to put some asteroids in, you click on the black screen and a brown dot should come up. However, when i clicked to put additional asteroids, no additional brown dots come up. Just some minor bugs. I love it either way. :3dcool: |
|
|
|
# 7 |
|
Guest
|
Problems
When I click on the Done from the Set Globals window, nothing happens. I have to click the window's X to close it. Nothing from my input is there when I reopen the Set Globals.
What gives? BTW. I don't have anything in the C:\Homeworld2\Data except the .big files. Should I unbig them? How? |
|
|
# 9 |
|
Guest
|
Ok, I'll fix the Done button later and see why asteroids dont display properly. For Malignus, it does have a GUI but only for the XZ plane [in 3d terms, most people think of it as the XY plane, being used to 2d]. As such you have to set height in notepad.
To get the globals to work, just minimize the window for now instead of hitting X. That will keep the data open while allowing you to move on. Edit: Uploaded 0.03a with above fixes. Done button works and asteroids display properly [forgot to reference the picturebox object for positioning... oops] Sorry I didnt notice that one [its rather obvious], but I had too much glare on my monitor at the time, and files saved properly so I assumed there was nothing wrong. Last edited by IWAssassin : 23rd Oct 03 at 7:20 PM. |
|
|
# 11
|
|
Otherworldly Invader
Join Date: Dec 2002
Location: Washington State
|
I put together a map, and went to save it. There was nothing under Homeworld 2/Data/ So I made the file folders to create the path that you said they should be in, and saved it in there. But when I try to play a game with it, the map doesnt show up on the list.
Edit: Opps, I was looking in the wrong place. Any way to LOAD a level? Last edited by Gyokuran : 23rd Oct 03 at 9:41 PM. |
|
|
|
# 16 |
|
Guest
|
Minor Suggestions
Great work!!
Might I be so presumptious as to suggest 3 minor changes? In frmProperties.Form_Load() add this to the setup loop Label1(i).AutoSize = False Further down in same procdedure, change it to this If frmMain.Option5.Value = True Then Label1(0).Visible = True Label1(0).Caption = "No Defined Properties" Label1(0).AutoSize = True End If In the same vein, change it to If frmMain.Option7.Value = True Then Label1(0).Visible = True Label1(0).Caption = "No Defined Properties" Label1(0).AutoSize = True End If When I first played with it last night I was unclear what the properties form was saying on the Megalith and Pebble forms. |
|
|
# 17 |
|
Guest
|
Tryed making a map with ur tool and i can say its fab.
![]() Only problem is after the basic bits were done and saved that worked but when i added some more stuff like clouds and debris it crashed. Here is the code the tool produced. --- -- Generated by Mission Boy -- Mission Boy by IWAssassin levelDesc = "Ria" maxPlayers = 4 player = {} player[0] = { id = 0, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[1] = { id = 1, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[2] = { id = 2, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[3] = { id = 3, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } function DetermChunk() addPoint("StartPos0", {-152, 0, 35516}, {0, 0, 0}) addPoint("StartPos1", {-38237, 0, -3779}, {0, 90, 0}) addPoint("StartPos2", {151, 0, -37028}, {0, 180, 0}) addPoint("StartPos3", {34911, 0, -3477}, {0, 270, 0}) addAsteroid("Asteroid_3", {-2872, 0, 39143}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {1964, 0, 39143}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {38539, 0, -1058}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {38539, 0, -6499}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {3173, 0, -41260}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-4383, 0, -41260}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-44283, 0, -5290}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-44283, 0, -756}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {38236, 0, 37632}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-38237, 0, 36725}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-40051, 0, -41562}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {42166, 0, -41260}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {755, 0, -5290}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {755, 0, 4080}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-4383, 0, 151}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {6196, 0, -454}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {453, 0, -454}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-2872, 0, -2872}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {2569, 0, -3174}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-2872, 0, 3778}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {4080, 0, 2569}, 100, 0, 0, 0, 0) addCloud("polySurface1", "dustcloud_0", {-19799, 0, 20403}, {1, 0, 0, 1}, 0.0, 100) addCloud("polySurface1", "dustcloud_0", {-20706, 0, -20404}, {1, 0, 0, 1}, 0.0, 100) addCloud("polySurface1", "dustcloud_0", {22821, 0, -21008}, {1, 0, 0, 1}, 0.0, 100) addCloud("polySurface1", "dustcloud_0", {24332, 0, 21007}, {1, 0, 0, 1}, 0.0, 100) addSquadron("meg_bentus_ruin_1", "meg_bentus_ruin_1", {42770, 0, 19496}, -1, {0, 0, 0}, 0, 0) addSquadron("meg_bentus_ruin_2", "meg_bentus_ruin_2", {-39446, 0, -24333}, -1, {0, 0, 0}, 0, 0) addSquadron("meg_bentus_ruin_3", "meg_bentus_ruin_3", {25843, 0, -32494}, -1, {0, 0, 0}, 0, 0) addSquadron("meg_bentus_ruin_4", "meg_bentus_ruin_4", {-26449, 0, 28866}, -1, {0, 0, 0}, 0, 0) addNebula("m11_bentusi_debris", "m11_bentusi_debris", {453, 0, 1057}, {0.392156862745098, 0.392156862745098, 0, 1}, 0.0, 100) setWorldBoundsInner({0, 0, 0}, {60000, 60000, 60000}) end function NonDetermChunk() fogSetActive(0) setGlareIntensity(0) setLevelShadowColour(0, 0, 0, 1) loadBackground ("m02") setSensorsManagerCameraDistances(10000, 40000) setDefaultMusic ("Data:sound/music/battle/battle_keeper") end -------------- Any ideas what happened? |
|
|
# 18 |
|
Guest
|
I believe there is a problem in frmMain. I changed Option3_Click() to read
Private Sub Option3_Click() With Combo1 .Clear .AddItem "cloud_0" .AddItem "cloud_nores" .AddItem "cloud_nores2" .AddItem "cloud_nores3" .Text = "Select Type" End With End Sub The original was leaving the cloud items as type variant. I don't know what that would do to the output file. But, since you had a problem when you added clouds this might be the source. |
|
|
# 19 |
|
Guest
|
Another map i want working
-- Generated by Mission Boy
-- Mission Boy by IWAssassin levelDesc = "COImap" maxPlayers = 5 player = {} player[0] = { id = 0, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[1] = { id = 1, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[2] = { id = 2, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[3] = { id = 3, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } player[4] = { id = 4, name = "Vaygr", resources = 1500, raceID = 1, startPos = 1, } function DetermChunk() addPoint("StartPos0", {1133, 0, 33627}, {0, 0, 0}) addPoint("StartPos1", {-34383, 0, 33375}, {0, 0, 0}) addPoint("StartPos2", {37405, 0, 33627}, {0, 0, 0}) addPoint("StartPos3", {-24056, 0, -34131}, {0, 180, 0}) addPoint("StartPos4", {23047, 0, -34383}, {0, 180, 0}) addAsteroid("Asteroid_3", {-31109, 0, -35391}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-31109, 0, -34887}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-18262, 0, -35391}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-18262, 0, -34635}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {15743, 0, -35643}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {15743, 0, -34635}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {29345, 0, -36147}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {29345, 0, -35139}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {27078, 0, 32871}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {26826, 0, 33627}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {46221, 0, 32871}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {46221, 0, 33627}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {9949, 0, 32619}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {9949, 0, 34382}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-9194, 0, 32367}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-8943, 0, 33627}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-26071, 0, 31612}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-26071, 0, 32367}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-42444, 0, 32871}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-42444, 0, 31612}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-33880, 0, 26826}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {2141, 0, 28337}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {36901, 0, 28589}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {22795, 0, -26827}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-25063, 0, -26827}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-27834, 0, -630}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-28842, 0, -2142}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-27834, 0, -4409}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {24811, 0, -5164}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {27078, 0, -3149}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {23551, 0, -1386}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-630, 0, -5920}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-1386, 0, -4409}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {-378, 0, -1134}, 100, 0, 0, 0, 0) addAsteroid("Asteroid_3", {2141, 0, -4157}, 100, 0, 0, 0, 0) addCloud("polySurface1", "dustcloud_0", {-34635, 0, 11964}, {1, 0, 0, 1}, 0.0, 10) addCloud("polySurface1", "dustcloud_0", {2392, 0, 12972}, {1, 0, 0, 1}, 0.0, 10) addCloud("polySurface1", "dustcloud_0", {36649, 0, 12468}, {1, 0, 0, 1}, 0.0, 10) addCloud("polySurface1", "dustcloud_0", {22292, 0, -15744}, {1, 0, 0, 1}, 0.0, 10) addCloud("polySurface1", "dustcloud_0", {-25315, 0, -16499}, {1, 0, 0, 1}, 0.0, 10) addCloud("polySurface1", "dustcloud_0", {-378, 0, -16499}, {1, 0, 0, 1}, 0.0, 10) addNebula("m05_dustcloud_nebula", "m05_dustcloud_nebula", {-44711, 0, -2393}, {1, 0, 0, 1}, 0.0, 10) addNebula("m05_dustcloud_nebula", "m05_dustcloud_nebula", {-11965, 0, -2897}, {1, 0, 0, 1}, 0.0, 10) addNebula("m05_dustcloud_nebula", "m05_dustcloud_nebula", {15239, 0, -2142}, {1, 0, 0, 1}, 0.0, 10) addNebula("m05_dustcloud_nebula", "m05_dustcloud_nebula", {41435, 0, -3653}, {1, 0, 0, 1}, 0.0, 10) setWorldBoundsInner({0, 0, 0}, {50000, 50000, 50000}) end function NonDetermChunk() fogSetActive(0) setGlareIntensity(0) setLevelShadowColour(0, 0, 0, 1) loadBackground ("m02") setSensorsManagerCameraDistances(10000, 40000) setDefaultMusic ("Data:sound/music/battle/battle_keeper") end Help needed. |
|
|
# 22 |
|
Guest
|
Size wise... 100-1000 I find is acceptable with one caveat... unless you have a LOT of dust clouds, they're almost impossible to notice. So make them 100m across, but put 10 or more in a cluster.
Also New version uploaded with RedDog's fixes, working on additional fixes soon, but these were fairly major. Also all items now have default values so you wont get a corrupt file by not putting values in. |
|
|
# 24 |
|
Guest
|
IWAssassin
I've been with the code this am and am submitting for your perusal some modifications. Please consider them. They're not working just exactly right. The Hue, Lumina & Saturation are giving me lots of trouble.
Let me know what you think. R3dD0g Attempt at IWAssassin's MissionBoy Last edited by R3dD0g : 24th Oct 03 at 12:41 PM. |
|
|
# 27 |
|
Guest
|
What is this RedDog, using proper Programming procedures such as using Option Explicit and commenting code? How dare you make my code conform to international standards! Next you'll be having me name all my integers intSomethingOrAnother to keep track of what its declared AS! (:
Pretty nifty, I'll have a longer look at the added functions later (: And you know, you finally found a use for the ONE cDlg window I've never used - the color window. Such a damn useful control (: Last edited by IWAssassin : 24th Oct 03 at 5:34 PM. |
|
|
# 28 |
|
Guest
|
I always use Option Explicit. It whacks me up side the head when I screw up :naughty:
I like that cdlg control. I just don't know how to get the hue, lum & sat out of it. I thought about adding a little text box to that form and making it visible with the background set to the color that was selected in the cdlg. But, my boss came around and client / server programmers don't have much need for colors :naughty: so I closed it up and sent it in. |
|
|
# 29
|
|
werst spella evar
Join Date: Dec 2002
Location: mile high
|
Nifty, very. One thing, for the code syntax
Code:
player[0] = { id = 0, name = [b.""[/b], resources = 1500, raceID = 1, startPos = 1, } [/code] ooh yeah, one other thing, a note to newbs your start postion should be significantly under the x,y,z confines. The larger the mapp the father under you need to be. last thing, is there anyway you could put in a gird, would be very helpfull. The rest of it look good but how do you add z values? |
|
|
|
# 31
|
|
werst spella evar
Join Date: Dec 2002
Location: mile high
|
Can i host this on my site www.tuinaschool.com/~zbobet2012?
|
|
|
|
# 32 |
|
Guest
|
Feel free to host as per the readme.txt, just beware that there will be updates so you'll have to re-upload periodically.
Change wise... have a lot planned but been helping my mother move to a new place so have had no time this weekend. Planned are a grid, and hopefully an ability to place items along the "z" axis [its actually the Y axis, silly people], as currently the only way to do so is edit it all in notepad [currently all the program does is make the notepad editing EASIER as you dont need to get out your calculator for the XZ values, and dont have to copy+paste code you might get wrong. Also will hopefully fix the zoom feature, make sure you cant duplicate player start positions, and maybe even add a delete feature. |
|
|
# 38 |
|
Guest
|
Very nice work! It makes it very easy to create a map in a few minutes
. However, I must point out that the coordinate axes are based on convention, and the standard view of a right-hand coordinate system has the x-axis coming towards you, the y-axis to the right, and the z-axis vertical, so when as viewed from above would appear to be an x-y plane . Homeworld just uses a different system.- nickersonm |
|
|
# 41 |
|
Guest
|
For the placing of items on the black section i was thinking could u have small icons like u see around the ships in sensor manager to indicate whats what. Or make ur own icons. And have when u place items on the map can u make some hypertext come up when ur pointer is over it, showing exactly what it is. And can this text be editable (if its useful option if not then tis ok).
Just some suggestions. Also when will there be a edit option on exisiting maps u make with the tool, like load and edit stuff? Last edited by Skeeter : 27th Oct 03 at 2:16 AM. |
|
|
# 46
|
|
|
Lost in the Web...
Join Date: Jun 2003
Location: %HW2_ROOT%
|
Quote:
It depends on which documentation you're reading... But, yeah, something somewhere is reversed. -Mikail Last edited by Mikail : 28th Nov 03 at 3:19 PM. |
|
|
|
|
|
# 47 |
|
Guest
|
I tried using asteroids as templates for adding other things such as nebula and dust clouds etc
I did this by placing an asteroid where I wanted somthing and then editing it in the .level file with a text editor... The weird thing is, if I change the asteroids to anything else, they cease to show up in the game : / It's weird, all iv'e done is tell the map that this asteroid is now a dust cloud or somthing. I only get this error with MissionBoy created maps, I can go into other peoples maps and change things around (like turn a cloud in a bigred or somthing). Any idea whats going on anbody? |
|
|
# 48 |
|
Guest
|
It would be nice to see where I am puting things ahd what they look like,
Like in Fred or Fred 2 from Freespace 2 At this point I might as well let you guys make maps. I have dyslexia, and this is really confuseing. I have made at least 10 maps and none of them come out right. HW2 always bombed out. I am gonna give it a rest for now till there is a map viewer that can show me what the map looks like after i made it or a patch that can show me what it is or what the object looks like and where I am puting it on the map. Dont get me wrong this is a very good tool. I am a visual worker or ,learner. This is takeing me too long. |
|
|
# 49 |
|
Guest
|
great tool. I've just finished playing around with it and now have a handle on map making for HW2. My only question is when I place debris.. such as bigred and such how do I spin and angle the direction the object is facing?
Which set of numbers do I use? addSquadron("meg_bigred", "meg_bigred", {-45643, 500, 51083}, -1, {0, 0, 0}, 0, 0) |
![]() |
|
|||||||
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|