I'm wanting to basically draw lines and filled opaque or semi-transparent rectangles on the surface of my map's terrain. I don't know if it's built-in or if an inventive mapper has made it happen already.
For lines I abused the Decal Protoss doodad, but that has limited uses, and since I'm completely ignorant as to how to use the model editor thing, I can't even so much as change the color.
Is this possible? Seems like custom doodads might be the way to go, but the rectangles and lines would need to hug the contour of the terrain, and I'm not sure what limitations that causes. Also, if there's a more brute-force method, I'm more a programmer than an artist, so that's preferable.
For the record, I did search for this. There's a sweet thread about drawing lines, but it's drawing lines on-screen using dialogs, and I need them in the environment unless I'm going to query the user's resolution, camera position, and do some very not-fun math to translate it.
EDIT: It's probably obvious, but just to clarify, this would need to be done dynamically, which is why I put it in triggers.
I draw lines on my map by using units and point to point loops where i create units that players cant interact with on the map. First you create a unit that doesnt do anything but sit there then you make an actor for it that uses the model you want.
Then you make a trigger that creates these units in a line.
If your on USA servers check out (((Infinite TD))) theres a bunch of lines all over the map I draw using units.
My maps name for the example is : Infinite TD
Since you want it to be dynamic and possibly will want to redraw the lines what you do is add the units to a unit group for the specific player they are for.. when you need to redo the lines you can remove all the units in the unit group from the game and redo them.
For changing the models color..... This is controlled by the actor. the actor determines if the displayed model can be tinted or not or opacity lots of fun little stuff you can do by sending messages to the actor after you create the unit through triggers.
Note: some models may not allow you to adjust the tint/ opacity... also note actors have two colors for tinting one is the player color tint and then theres the team color tint. which is displayed for the player is determined by how they have the team color setting set near the mini map.
I'd thought of doing something like this, but it would mean adding literally thousands of units only to move or destroy them quite regularly. As the unit I use gets larger, I also lose a lot of precision on ramps and the like, and it starts to look bad.
I couldn't find your map using the editor's search, but I'm assuming I know what you mean, and I'm not sure it works for me in this situation....
Eh the game handles the 1000's of untis pretty well if they dont do anything but look pretty.
Youd be amazed at how fast the game can create 1000 units and then remove them. Its pretty much instantanious.
Umm my map isnt on SC2Mapster its on bnet... Search for the game name as ... Infinite .... it should come up in the list online
Dunno what you mean about precision you can place the units down to the .01 precision at least. Im pretty sure you can be more accurate then that. You could also update the trigger with the units radius if your making it larger so that the units are spread acordingly. I believe it is also possible to calculate pathing from one point to another with triggers but I have yet to try and do that.
I mean that if I'm placing, for instance, a flat doodad-like unit (which is what I need) on a ramp it'll start cutting into the terrain unless I make each unit extremely small and place a very large number of them.
I know the game can handle thousands of units without too much trouble. My decal-based grid is proof (I have an option to turn it on and off and it is indeed pretty much instantaneous), but I could really be pushing the limits with what I need to do. My grid consists of about 800 decals right now, and that's a complete line for each one. If I were to make each line 10 units (that's very conservative, that's already 8000. I don't need to be increasing my resource requirements by orders of magnitude if I can avoid it.
Anyway, what I WANT is pretty much what already exists in the editor. When you create a region it makes a semi-transparent blue rectangle and places it on the terrain. I just want to do that via triggers in the game.
Bump? I was hoping someone would tell me either "Yeah, that can be done. I did it like [this]" or "There's no such functionality in the editor. A custom doodad is your best bet" or something.
Could I accomplish this in Blender (not that I've used it much)? Terrain-matching is a must, so if that only comes from decals, then I suppose I need it to handle that. Can it take a PNG or some other GIMP-creatable format that supports transparency?
Thanks for the help, by the way. Maybe we're getting somewhere. I'd like to think this is useful information for the general mapping populace.
Can't you use floating text images? When reading your OP, I immediately thought of these sprite engine demos that have been showcased on the front page before.
Then you could pretty much just do it in MSPaint.
EDIT: In fact, floating texts have transparency I believe, so you can probably get away with semi-transparent color fills.
Wait, what?
I tried searching for this but I'm afraid my ignorance has got the better of me. What are you talking about? Can someone toss a link my way?
Wait a minute, by floating text do you mean like the "+10" some TDs use for showing mineral income from kills and the like? That's not terrain forming so I don't think it'll serve my purpose.
I'm hoping you mean something else, though. Anyone? =(
Just to note down that there's a model for points used by the editor that you can access in game, it will point accurately to the point you want to show.
Thanks for that. I had noticed other maps using it although I hadn't found it myself. That will undoubtedly be useful for other portions of the game. Obviously it won't serve the main purpose I need here, but I don't think you were implying that. Thanks!
Also, forgive the bump, but I'm still holding out hope that someone has a magic bullet for me.
Well, I don't pretend to be an expert on the subject, but this IS most definitely possible. The first thing that came to mind to me was this:
Create a unit that Ignores Terrain Height. Set its model to a flat object (can't think of one offhand, but a model that is flat width-wise and very tall). Using a trigger, you can create these units at positions along the map and angle them and/or change their height using Actor Messages (Set Rotation for pitch and Set Height for hills, etc;) If you position the height so it's always X below the ground, only a very small edge of the model will appear, thus giving you a line that gives the appearance of hugging a surface. I imagine it wouldn't look 100% perfect over cliffs, but just about everything else is possible. I did similar things to this in my Third Person Shooter system, where I used actors and angled them and changed their heights to created proper impact effects on objects.
This could work especially well with either a cloak effect or a transparency Actor Message added to make the lines more 'glowy'.
I'm sure there are other methods that require less work, but I'm currently drawing a blank. I don't know if you can use the model of a created region in the editor or not but that rectangle used to represent a region definitely hugs the terrain and can be scaled to make either lines or boxes.
YES. This is definitely what I'm looking for. Sounds like it's a little complicated, but hopefully I can hack through it. THANK YOU.
EDIT: Brick-walled immediately. I can't figure out where the "pylon power radius" is, or what it is for that matter. Seems like searching for each of those keywords in the actor section of data would bring something up. It's very frustrating being so close to what I need and not being able to use it. ;_;
I'm wanting to basically draw lines and filled opaque or semi-transparent rectangles on the surface of my map's terrain. I don't know if it's built-in or if an inventive mapper has made it happen already.
For lines I abused the Decal Protoss doodad, but that has limited uses, and since I'm completely ignorant as to how to use the model editor thing, I can't even so much as change the color.
Is this possible? Seems like custom doodads might be the way to go, but the rectangles and lines would need to hug the contour of the terrain, and I'm not sure what limitations that causes. Also, if there's a more brute-force method, I'm more a programmer than an artist, so that's preferable.
For the record, I did search for this. There's a sweet thread about drawing lines, but it's drawing lines on-screen using dialogs, and I need them in the environment unless I'm going to query the user's resolution, camera position, and do some very not-fun math to translate it.
EDIT: It's probably obvious, but just to clarify, this would need to be done dynamically, which is why I put it in triggers.
@GKimsey: Go
I draw lines on my map by using units and point to point loops where i create units that players cant interact with on the map. First you create a unit that doesnt do anything but sit there then you make an actor for it that uses the model you want.
Then you make a trigger that creates these units in a line.
If your on USA servers check out (((Infinite TD))) theres a bunch of lines all over the map I draw using units.
My maps name for the example is : Infinite TD
Since you want it to be dynamic and possibly will want to redraw the lines what you do is add the units to a unit group for the specific player they are for.. when you need to redo the lines you can remove all the units in the unit group from the game and redo them.
For changing the models color..... This is controlled by the actor. the actor determines if the displayed model can be tinted or not or opacity lots of fun little stuff you can do by sending messages to the actor after you create the unit through triggers.
Note: some models may not allow you to adjust the tint/ opacity... also note actors have two colors for tinting one is the player color tint and then theres the team color tint. which is displayed for the player is determined by how they have the team color setting set near the mini map.
Thanks for the reply.
I'd thought of doing something like this, but it would mean adding literally thousands of units only to move or destroy them quite regularly. As the unit I use gets larger, I also lose a lot of precision on ramps and the like, and it starts to look bad.
I couldn't find your map using the editor's search, but I'm assuming I know what you mean, and I'm not sure it works for me in this situation....
Eh the game handles the 1000's of untis pretty well if they dont do anything but look pretty.
Youd be amazed at how fast the game can create 1000 units and then remove them. Its pretty much instantanious.
Umm my map isnt on SC2Mapster its on bnet... Search for the game name as ... Infinite .... it should come up in the list online
Dunno what you mean about precision you can place the units down to the .01 precision at least. Im pretty sure you can be more accurate then that. You could also update the trigger with the units radius if your making it larger so that the units are spread acordingly. I believe it is also possible to calculate pathing from one point to another with triggers but I have yet to try and do that.
I mean that if I'm placing, for instance, a flat doodad-like unit (which is what I need) on a ramp it'll start cutting into the terrain unless I make each unit extremely small and place a very large number of them.
I know the game can handle thousands of units without too much trouble. My decal-based grid is proof (I have an option to turn it on and off and it is indeed pretty much instantaneous), but I could really be pushing the limits with what I need to do. My grid consists of about 800 decals right now, and that's a complete line for each one. If I were to make each line 10 units (that's very conservative, that's already 8000. I don't need to be increasing my resource requirements by orders of magnitude if I can avoid it.
Anyway, what I WANT is pretty much what already exists in the editor. When you create a region it makes a semi-transparent blue rectangle and places it on the terrain. I just want to do that via triggers in the game.
Bump? I was hoping someone would tell me either "Yeah, that can be done. I did it like [this]" or "There's no such functionality in the editor. A custom doodad is your best bet" or something.
@GKimsey: Go
Ask a modeler to give you a semi-transparent, flat model that you can import and scale to your liking in the editor.
Quote from s3rius:
@GKimsey: Go
Ask a modeler to give you a semi-transparent, flat model that you can import and scale to your liking in the editor.
----
I'm not sure if the 3ds max plugin can correctly export splats/decals right now. Can anyone c/d?
Could I accomplish this in Blender (not that I've used it much)? Terrain-matching is a must, so if that only comes from decals, then I suppose I need it to handle that. Can it take a PNG or some other GIMP-creatable format that supports transparency?
Thanks for the help, by the way. Maybe we're getting somewhere. I'd like to think this is useful information for the general mapping populace.
Can't you use floating text images? When reading your OP, I immediately thought of these sprite engine demos that have been showcased on the front page before.
Then you could pretty much just do it in MSPaint.
EDIT: In fact, floating texts have transparency I believe, so you can probably get away with semi-transparent color fills.
Wait, what? I tried searching for this but I'm afraid my ignorance has got the better of me. What are you talking about? Can someone toss a link my way?
Wait a minute, by floating text do you mean like the "+10" some TDs use for showing mineral income from kills and the like? That's not terrain forming so I don't think it'll serve my purpose.
I'm hoping you mean something else, though. Anyone? =(
Just to note down that there's a model for points used by the editor that you can access in game, it will point accurately to the point you want to show.
3D Pointer Model I think
Thanks for that. I had noticed other maps using it although I hadn't found it myself. That will undoubtedly be useful for other portions of the game. Obviously it won't serve the main purpose I need here, but I don't think you were implying that. Thanks!
Also, forgive the bump, but I'm still holding out hope that someone has a magic bullet for me.
I can't help thinking someone knows how to do this. That being the case... bump?
Well, I don't pretend to be an expert on the subject, but this IS most definitely possible. The first thing that came to mind to me was this:
Create a unit that Ignores Terrain Height. Set its model to a flat object (can't think of one offhand, but a model that is flat width-wise and very tall). Using a trigger, you can create these units at positions along the map and angle them and/or change their height using Actor Messages (Set Rotation for pitch and Set Height for hills, etc;) If you position the height so it's always X below the ground, only a very small edge of the model will appear, thus giving you a line that gives the appearance of hugging a surface. I imagine it wouldn't look 100% perfect over cliffs, but just about everything else is possible. I did similar things to this in my Third Person Shooter system, where I used actors and angled them and changed their heights to created proper impact effects on objects.
This could work especially well with either a cloak effect or a transparency Actor Message added to make the lines more 'glowy'.
I'm sure there are other methods that require less work, but I'm currently drawing a blank. I don't know if you can use the model of a created region in the editor or not but that rectangle used to represent a region definitely hugs the terrain and can be scaled to make either lines or boxes.
How about this? http://forums.sc2mapster.com/resources/project-workplace/11633-release-zone-wars-eu/ As mentioned in the thread, you could make a custom model and use it with the "pylon power supply actor" (can't remember the name, but it's something with "power").
@FvFingerhoff: Go
YES. This is definitely what I'm looking for. Sounds like it's a little complicated, but hopefully I can hack through it. THANK YOU.
EDIT: Brick-walled immediately. I can't figure out where the "pylon power radius" is, or what it is for that matter. Seems like searching for each of those keywords in the actor section of data would bring something up. It's very frustrating being so close to what I need and not being able to use it. ;_;