As far as the terrain goes, it depends on what tileset you're using. Braxis Alpha, for example, is a tileset where, if you lower the terrain, it shows space like you mentioned.
For implementing old units, there is a mod called StarBow that already does that fairly effectively. Not sure if that has AI programmed into it, though. I think you can apply StarBow to your map by adding it as a dependency.
The things that you're looking for are fairly basic. Take a look at some of the tutorials around this site to see if they can help you out. And, of course, post questions to one of the development forums. You'll typically get an answer within a day or two depending on how complicated your question is.
Also, you might want to edit out your email address and have people PM you here instead. Security and all that. Because while the government most assuredly already knows more about you than you do, everyone else doesn't need that information. ;)
I think a good ideal to strive toward would be to have it resemble scroll bars that exist everywhere else (like your internet browser, for example.) It's a convention that everyone is already used to and probably expects from scroll bar functionality. The only other thing that is missing right now, other than jumping to a section, is the increment buttons at the top and bottom. There's also mouse scroll but I'm not sure implementing that would even be possible.
This is an awesome script. Looks really useful. From running the example map, it looks really good. It also appears to fit the submission guidelines.
!!! WARNING. THE FOLLOWING MAY OR MAY NOT CONSIST OF OPINIONS !!!
Unfortunately, it seems much too complicated to actually test within a reasonable amount of time! Well, maybe for a dummy like me. My eyes glaze over when I read step 1 of the step-by-step guide. So I suggest streamlining the library a bit so it's more noob-friendly.
To be honest, I would love to try and implement something like this in a map, but I'm afraid the time investment required to parse how it works is simply not worth it. Either work on your explanation or make the library more user-friendly.
As far as the actual features go, it does pretty much what you need it to do. Adding the ability to click on the empty space in the scroll bar to quickly jump to that point would be a nice addition (seems like you have that already planned, though.)
Anyway, I'm going to add it to the category list. Thanks for the submission.
Oh dear! Thank you for pointing that out. I've made the correction and removed the asterisk.
If anyone would be willing to test out some of the unapproved libraries and help get some more of these approved, please do. It would be nice to clean up the list a bit and get some of these libraries updated.
RandString is a simple function that returns a randomized string. This function can be used anywhere that strings can be used. There is almost no setting up required - all you have to do is import the library and start using the function.
Great taste, low calories.
Okay, so you might be asking yourself, "Self, why would Miles go through all the trouble of making this silly library?" Well, Self, there may be a situation where you just have to have a random string and nothing else will do. Personally, I intend to use it to display gibberish on a dialog item to simulate data encryption or something like that. It will be awesome, trust me.
Demonstration
The simplest way to use this would be to set some string variable. Let's call it String_X.
This example will set String_X to a random, 5-character string. It could include such wonderful strings as:
jH4S%
i $%4
00000 (it could happen)
{4Gs5
And so on. You can also set it to exclude or include letters, numbers, symbols, and/or spaces. Furthermore, you can set it to concatenate an initial substring or end substring. For example:
"HERES MAH STRING: g5*7& <--- WASNT THAT AWESOME?!"
I should note that Initial String and End String are not considered when setting Length.
Installation
All you have to do is download the library to a folder of your choice, then import it into the trigger editor and place wherever you like. Then you just call the RandString function wherever you can put a string.
Download
See the attachment on this thread.
README
Here's the official README as it's included in the library:
Protip: Use Dropbox to store your maps. That way you can edit them from anywhere and there will always be a few versions automatically backed up. Doesn't help you now, I know, but... you know... posterity and all...
As far as editing your map, learn Galaxy Script or you are SOL, I'm afraid. Maybe you can find someone at SC2Mapster who would be willing to reconstruct it for you.
When you create a text tag in triggers you can set things like initial height, direction, and speed. These settings determine which way your tag will move and how quickly. There are also functions to modify these parameters.
There is no split function as far as I can tell. What you can do is loop through each character and check it against a condition (char_var == ":"), then use substring to save one portion of a string as another string variable.
Create a requirement that has a level 2 behavior on the accessing unit (provided you are using the Shop Buy behavior on the store). Then add the requirement to the shop's selling ability under that particular item.
I don't want to go into data (I want to do it with pure triggers). Will something like this work:
Event - Unit takes damage
Condtion - Unit type of triggering unit == YourUnit
Action - Set "triggering unit" life = (damage taken) + (damage absorbed) + (current life of "triggering unit")
I have to add the damage absorbed so that it will seem as if the unit that gets attacked did not even minus health.
Do you agree?
This will work but I would caution you that the event will fire when ANY unit takes damage, regardless of your condition. I don't mean to say that the actions will execute, but the event will use some system resources at every event call. This will not be noticeable if your map only has a small handful of units that can be damaged at once, but if your unit count is approaching the 50-100+ range you might want to consider a different approach. Either way, try it and see how it turns out.
(damage taken) can be set to the function "Triggering Damage Amount."
(damage absorbed) is irrelevant and should be kept out of the function.
To prevent fatal damage to the unit, give the unit a damage response buff which negates fatal damage. This will work better than any trigger you could come up with.
With the GUI updates you should be able to get the catalog fields using drop down boxes. Otherwise, you can look up the fields in the data editor by enabling the "View Raw Data" option.
0
@AbyssalStalker: Go
As far as the terrain goes, it depends on what tileset you're using. Braxis Alpha, for example, is a tileset where, if you lower the terrain, it shows space like you mentioned.
For implementing old units, there is a mod called StarBow that already does that fairly effectively. Not sure if that has AI programmed into it, though. I think you can apply StarBow to your map by adding it as a dependency.
The things that you're looking for are fairly basic. Take a look at some of the tutorials around this site to see if they can help you out. And, of course, post questions to one of the development forums. You'll typically get an answer within a day or two depending on how complicated your question is.
Also, you might want to edit out your email address and have people PM you here instead. Security and all that. Because while the government most assuredly already knows more about you than you do, everyone else doesn't need that information. ;)
0
@TerranMaster23: Go
Hello,
Just wanted to point out that this function is redundant since it already occurs when you start the timer:
Getting rid of this should help clean things up a bit. Good luck on your map!
0
@finiteturtles: Go
You can try using QuickCat. You would just need to make use the "Convert Integer To String" function.
0
@Elmaex: Go
0
@Arkless: Go
I think a good ideal to strive toward would be to have it resemble scroll bars that exist everywhere else (like your internet browser, for example.) It's a convention that everyone is already used to and probably expects from scroll bar functionality. The only other thing that is missing right now, other than jumping to a section, is the increment buttons at the top and bottom. There's also mouse scroll but I'm not sure implementing that would even be possible.
0
This is an awesome script. Looks really useful. From running the example map, it looks really good. It also appears to fit the submission guidelines.
!!! WARNING. THE FOLLOWING MAY OR MAY NOT CONSIST OF OPINIONS !!!
Unfortunately, it seems much too complicated to actually test within a reasonable amount of time! Well, maybe for a dummy like me. My eyes glaze over when I read step 1 of the step-by-step guide. So I suggest streamlining the library a bit so it's more noob-friendly.
To be honest, I would love to try and implement something like this in a map, but I'm afraid the time investment required to parse how it works is simply not worth it. Either work on your explanation or make the library more user-friendly.
As far as the actual features go, it does pretty much what you need it to do. Adding the ability to click on the empty space in the scroll bar to quickly jump to that point would be a nice addition (seems like you have that already planned, though.)
Anyway, I'm going to add it to the category list. Thanks for the submission.
0
@Arkless: Go
Oh dear! Thank you for pointing that out. I've made the correction and removed the asterisk.
If anyone would be willing to test out some of the unapproved libraries and help get some more of these approved, please do. It would be nice to clean up the list a bit and get some of these libraries updated.
0
RandString by Miles
Description
RandString is a simple function that returns a randomized string. This function can be used anywhere that strings can be used. There is almost no setting up required - all you have to do is import the library and start using the function.
Okay, so you might be asking yourself, "Self, why would Miles go through all the trouble of making this silly library?" Well, Self, there may be a situation where you just have to have a random string and nothing else will do. Personally, I intend to use it to display gibberish on a dialog item to simulate data encryption or something like that. It will be awesome, trust me.
Demonstration
The simplest way to use this would be to set some string variable. Let's call it String_X.
This example will set String_X to a random, 5-character string. It could include such wonderful strings as:
And so on. You can also set it to exclude or include letters, numbers, symbols, and/or spaces. Furthermore, you can set it to concatenate an initial substring or end substring. For example:
I should note that Initial String and End String are not considered when setting Length.
Installation
All you have to do is download the library to a folder of your choice, then import it into the trigger editor and place wherever you like. Then you just call the RandString function wherever you can put a string.
Download
See the attachment on this thread.
README
Here's the official README as it's included in the library:
0
Protip: Use Dropbox to store your maps. That way you can edit them from anywhere and there will always be a few versions automatically backed up. Doesn't help you now, I know, but... you know... posterity and all...
As far as editing your map, learn Galaxy Script or you are SOL, I'm afraid. Maybe you can find someone at SC2Mapster who would be willing to reconstruct it for you.
0
When you create a text tag in triggers you can set things like initial height, direction, and speed. These settings determine which way your tag will move and how quickly. There are also functions to modify these parameters.
0
@Chris97Ong: Go
There is no split function as far as I can tell. What you can do is loop through each character and check it against a condition (char_var == ":"), then use substring to save one portion of a string as another string variable.
0
@Bennyha1: Go
Create a requirement that has a level 2 behavior on the accessing unit (provided you are using the Shop Buy behavior on the store). Then add the requirement to the shop's selling ability under that particular item.
0
This will work but I would caution you that the event will fire when ANY unit takes damage, regardless of your condition. I don't mean to say that the actions will execute, but the event will use some system resources at every event call. This will not be noticeable if your map only has a small handful of units that can be damaged at once, but if your unit count is approaching the 50-100+ range you might want to consider a different approach. Either way, try it and see how it turns out.
(damage taken) can be set to the function "Triggering Damage Amount."
(damage absorbed) is irrelevant and should be kept out of the function.
To prevent fatal damage to the unit, give the unit a damage response buff which negates fatal damage. This will work better than any trigger you could come up with.
0
@merrillphish: Go
With the GUI updates you should be able to get the catalog fields using drop down boxes. Otherwise, you can look up the fields in the data editor by enabling the "View Raw Data" option.
0
@FunBotan: Go
Can you post a screenshot or copy the text from the debugger? That might help get to the bottom of the issue.