Euflorium: The Eufloria Community
Eufloria => Eufloria Classic => Eufloria Classic Mods => Topic started by: annikk.exe on May 27, 2011, 10:36:54 PM
-
EDIT: This was an early version!
Click here (http://www.dyson-game.com/smf/index.php?topic=1346.0) for the latest version.
This level file is designed to help you visually design asteroid fields.
Download the level file and place in the appropriate folder.
Load the level in Eufloria.
Left-click and drag to move asteroids around.
Right-click an asteroid to select it without moving it.
Use the two small buttons in the top left to increase and decrease the size of the selected asteroid.
Use the larger button in the top left to output the code that would create this asteroid field to a folder on your C drive.
By default there are 20 asteroids. To change this, open Asteroid Designer.lua and change the "roidnumber" variable at the top.
With huge thanks to Aino for showing us all the way with regard to IO, and for use of his GetMouseX() and GetMouseY() functions.
Enjoy :>
-
Yay, testing it out now :)
Edit - Looked at the code, may add some kinda possibility to add asteroid in-game... It's not gonna crash ro anything aslong as you use it in OnMouseLeftDown or something :)
-
Feel free :> I just wanted to make a basic one as this is a means to an end for me. I couldn't be bothered manually figuring out what values looked best and typing them in by hand, so I made this..
-
Yeah, but it would be very sad to jsut end up with no more avail. roids :)
I'll add it soon, I might also add a hold for the size configuration :)
Thanks for making it though, helps alot :)
Edit: now I got very inventful, I suddenly wanna make it a possibility to change the senddistance, it would be neat to jsut click on the senddistance ring and just drag it out? :D
Edit 2: And I changed it to directly save it to lua and make it a directly playable map :)
Hope all this is ok for you :)
-
Left-clicking on the send-distance ring causes you to deselect the asteroid, which makes the ring disappear!
I suspect you'd have to do it with more buttons. :>
Ultimately you'd probably want to have text labels on buttons as well.
A really really nice addition would be that if you click and hold one of the size increase or decrease buttons, after a moment the size goes up or down fast. :> Just like if you hold down the space bar on your keyboard, after a moment it starts adding lots of spaces.
-
That seems simple done :)
I've been coding too much lately: I can see the codes before I write them(which also makes stuff alot easier though :))...
-
I know the feeling!
It's when you start to think of lua as a language like English... you can express certain thoughts and ideas in Lua that are actually harder to say in English. Bizarre. :>
Anyway... I was thinking about the send distance problem. Maybe the best way to build the UI would be to have several different "toggle" buttons, so when you click a button, it deselects the other buttons automatically.
The buttons would each correspond to a different stat; Position, Size, Send Distance, etc. Then you could use left-click-and-drag actions to change each of these attributes.
Suppose you have Position selected. Dragging an asteroid would move the asteroid around.
Suppose you then click on "Size", this would deselect "Position" and now dragging an asteroid would cause it to change size.
Finally, you click the "Send Distance" button, this would deselect the "Size" button. Now dragging the asteroid around causes the Send Distance to change.
I think that UI scheme would be the easiest to use personally. Much more elegant than having + and - buttons for everything.
-
I was just think of making it so when you select: it uses Pythagoras' to find out if the distance between the asteroid and the mouse is equakl to something around the senddistance, then it will ignore everything else :)
-
Try clicking on a send distance ring in-game, you'll hopefully see what I mean...
-
I know what you mean, but when you click on the boxes to increase radius, what happens then?
By the way, I think it would be awesome to change senddistance and radius that way :D
But first I'll atleast make that this we talked about first :P
-
Hmmm, you're right: It disappears, didn't think of that. Derp
-
Dragging the asteroid doesn't create that problem though, hence the toggle button approach. :>
-
Kay, came into some problems, so I was slightly delayed :P
(vector3f problems, hate those x.x!)
-
In the mean time, I just designed an asteroid field and inserted it into the new level that I'm working on. :D
This tool should make it relatively simple to create huge, organic-looking asteroid fields, EG like Montezuma's Revenge. Hopefully some sweet levels will be designed with it!
-
Ok, added alot of stuff xD
- Adding asteroids
- Hold to increase radius
- Infinite "grid"
- HUGE MAP(though this won't be when you play the map you've made :))
- Creates a fully playable map right after saving it :)
-
Hah, yeah :D
-
I was wondering when someone would take up this challenge...
All we'd need is to be able to save levels.
I was looking through the Programming in Lua guide you linked here (http://"http://www.dyson-game.com/smf/index.php?topic=212.msg1978#msg1978") and noticed that Lua has an I/O library (http://"http://www.lua.org/pil/21.html") built into it. I just gave it a quick test and found that you can indeed create, read and write to files in a Eufloria map!
So, who wants to make a Visual Level Editor level? ;D
Awesome work!
-
(http://img717.imageshack.us/img717/5267/fluffyw.png)
-
Clicking to lay down new asteroids is pretty cool. There isn't a way to remove asteroids though... That could be more complicated because you'd have to re-adjust all the asteroid ID's so that there isn't a gap.
I also really really think the toggle button solution is the way forward. It would kind of be like Microsoft Paint; you click on a different tool and then drag the asteroid to use the tool on it. The tools would be, add, remove, resize, reposition, adjust send distance.
-
I think we can make a way for the output to ignore certain asteroids...
-
Lol, I wanna make it possible for an AI to exist, so it'll just settle asteroids as you make them xD
-
Infected AI is ok with more asteroids being added during play, I think...
-
Maybe double click?
-
Why double click? (and for what? I guess it is adding roids :D)
-
Removing roids.
-
Mhm, maybe add another button which is red when "disabling" and blue when adding, moving and "enabling" them.
-
To do the sendDistance thing, you could have a thing which stores the last selected asteroid and then you change a slider which in turn affects the distance.
Does that make sense or am I rembling?
Working on prototype, keep off.
EDIT: Also, is Aino's v2 Annikk's with stuff added, or totally different?
-
It makes good sense, I think... But the initial problem was that the ring disapears when you click away from the roid :/
-
Working on a semi-fix in my p-type
-
Kay, added "removing" :)
You'll have to left clickt he new box and it turns red, then if you right click any roid then it will turn red(the selected effect!) and vice versa.
So blue means added and won't be ignored during the creation process, red is the opposite.
Update: Added small red dots to appear on asteroids that are removed :)
Hope you understood it fine :)
-
Still I wanna see what Annikk has made :P
-
The problem with right-clicking is that it's already used for scrolling around the game area. I think it should be left-click only for doing actions like adding or removing a roid, or changing sizes of stuff.. otherwise it's too easy to change something by accident when you accidentally right-click somewhere to move, inside of restricting yourself to movement via the scroll wheel.
-
Nahh, it counts with a starting area, if you'r starting area isn't on anything, then you're safe :)
And right click isn't moving the roids, can't cahnge size and will only make it deleted, which can easily be rewinded by adding it...
-
Right click is adding asteroids. When I try to pan the game camera over to look at a different part of the level, it creates a new asteroid at the point I "grabbed" with the cursor! It directly interferes with the default ingame control system, imho that is not so good. I think right mouse button should be avoided for everything except passively selecting a different asteroid, an action which by its nature is not disruptive to the design process.
Also, when you "remove" an asteroid, just set its radius to 0. Then it will actually seem to disappear. :>
-
No, when removing and the radius is 0, what if you clicked it by accident?
And can't you jsut convert the adding of roids to left click? I think you know where it is and where it should be... I'm busy with Terraria :P Forget that :)
-
Make a 0 radius asteroid, and try to click on it. If you manage I'll give you a thousand bucks. :P
Anyway, I have been having a lot of ideas of my own about this. First and foremost, I know that a lot of people have spent time trying to create Eufloria level editors in languages such as Java.. but actually, one of the best ways to create such a thing is within Eufloria itself.
We are at the cusp of something pretty important right now. Aino, you and I are both in a position to start writing Level Editors, utilizing Eufloria itself as a visualsation tool. This could potentially make it far easier to create levels, opening it up to lots of new people. With our knowledge of coding, it's only a short leap at this point to imagine adding a Tick box to the level editor which installs, or does not install, Infected AI into the Dumped .lua file. The same could be done for the 3D Starfield Engine, and the parameters could be made adjustable by sliders in the game. Pretty much any mechanic that has been made, could be placed into the level editor so that it can write it into Dumped .lua files.
We could potentially see some awesome levels come out of this, if the level editors are easy to understand and use, and sufficiently powerful and stable.
I have some specific ideas about things that would be really awesome in a Level Editor, which I am now going to attempt to code.
-
I have an Idea(tm) for asteroid removal, too. Adding to my ptype. This is going to take longer than I thought, with the stuff I just thought of.
-
Hah:
(http://i444.photobucket.com/albums/qq166/Orl4ndo_from_Venezuela/challenge-accepted.jpg)
NOOOT, and how are you gonna give me a 1000 bucks?
Though I updated it with your desire... It now properly works with left click, though disabling and enabling is still right click: it doesn't affect very much, cause it is reverseable(but not with radius of 0 :o)
And Annikk, would you mind updating the front post with my newest(unless you don't :/)
-
Bah... this thread moves too fast. I posted something, then had something to add... by the time I'm done editing there's 2 new posts here!
I'm going to work on some of my own ideas for this. Lets make competing level editors perhaps. :> We can steal the good bits of both from each other's.. :p
-
Aww, wouldn't it be better with cooperation, for a better and more productive community?
-
I'm still working on EUClID, though I now think of that as a tool for making things OTHER than the map layout, really. I'm still going to put a map craetor and (possibly read/editor) in it.
-
Yeah, began worrying about that...
Though this is fun: we are currently 6 users online at once: most in my forumtime :D
-
I seem to remember there being something about a polygon-drawing function... Am I tripping or have I just not been able to find it?
Also, just managed to find the song (Piano man, Billy Joel) I've been thinking of ever since I saw a bunch of drunk guys setting fire to each other's hair. Yay, drunken stag karaoke.
-
Sing us a song, you're the piano man!
I've heard that one alot! I like it alot too :)
-
I've fixed SendDistance now :)
It will make every roid reachable to the selected one flash to show what asteroids are reachable :P
-
The latest version, send distance is now editable... works pretty well IMO... Just remember to use right click to select roids to chech if they reach to another roid :)
Next:
- Loading not finished maps
- Fixing the grabbing thing, it's very annoying that the center of the roid goes to the mouse, not just grabbing it...
-
I've been working on this pretty solidly since my last post. My version looks really nice now, I have redone the UI in a different way than before. Currently I can use it to change position, size, and send distance of asteroids. I can't add or remove asteroids yet, and I haven't made a proper button for Save yet... but it's looking pretty damn awesome..
-
Post a picture :D
-
It's a secret project for now. It really is looking great though. You should see it! :p
-
I want to, but you won't let me :/
-
Muahahaha.. :>
I've added a new tool; now you can Add Asteroids, up to a maximum of 150. That's me up to 4 tools now; Move, Resize, Send Distance and Add.
Next I need to make a Remove Asteroids tool. Then I need to make a nice button for Save, and make sure it actually sends all the data... Then version 1 will be complete...maybe...
-
There is no, as I know of atleast, asteroid deletion tool... but you can hide and resize it to 0 and then ignore all asteroid with lower than 5 or soemthing in radius when it comes to saving...
-
I found a good technique to do it. :>
-
Posted up new Level Designer, RoidForge.
-
Bugs to fix:
Update asteroid names when removing an asteroid.
Include RoidForge version number in outputted level comments.
RoidForge flashing name needs to stop flashing at a point when it's fully faded, so it doesn't look all abrupt and crappy.
Edit - ooh.. I just realised how I can delete trees. I can temporarily spawn a bunch of greys there, until the tree is detected as being dead. Then I can just remove the greys again. :> Will be a nice show as well...
Although... that might leave a Root stump. :/ Hmm...
-
Annikk, why not use the technique I use? Just add new asteroids and stuff, when you remove them then they get the radius of 0. You can still have a limit of asteroids and everything...
-
Coz it's harder to work with, I guess. If you're making a conquest map, rather than checking for every 'roid being captured except 1,5,15,67,53 and 4, you can just check for 1-25 and ignore everything over 9000.
Maybe.
-
Uhhm... If you look at Asteroid Designer that I updated, you will see thet the output file is only writing down the asteroids allowed to be written down. So after that you can go into the map, look for ID's and then go from there if you need to.
-
I just did it a different way. I'm sure both our methods work fine. :>
-
Yeah, but with that method you could just ignore tree stumps or anything like that...
-
I'm not including +/- trees in RoidForge, it's an asteroid field designer only. For now. :>
-
Aino, tell me about your Level Loading. Do you think you could actually build an entire file browser to choose which levels to load?
I noticed you were able to send an operating system command "mkdir" in order to create a directory (also known as a folder). Can you also send other OS commands? For example, if you could send the command "dir", that shows a list of all files and folders within the current directory. If you could capture the output of that command, you could use it to render a dialog box showing all the folder names. This would allow you to open any file from any folder, rather than relying on the file having the correct name and being in the correct folder.
Let me know your thoughts. :>
-
os.chdir(pathname)
change working directory
os.mkdir(pathname)
create a directory
os.remove(pathname)
remove a file or directory
pathname = os.currentdir()
get working directory path
for entry in os.dir(pathname) do ; end
iterates over the entries in a directory. The pathname argument is optional; if missing the current directory is used.
Special directory entries such as "." and ".." are not returned.
entry = os.dirent(pathname)
entry = os.dirent(file)
gets information about a directory entry via pathname or open file
Both the iterator function returned by os.dir() and the os.dirent() function return an 'entry' table. This table contains at least the following fields:
entry.name= the filename (Note that os.dirent() does need to set this field)
entry.type= "file" or "directory" (or an implementation-defined string)
entry.size= the file size in bytes
Implementations may add other fields or even methods.
Taken straight out of the lua OS command list :)
Hope you find what you need...
-
Love this editor helps people who want to make see the design so decided to edit it a bit as in the on screen lines etc are now box's and the buttons and now have text also makes it smaller so :)
Could use some tweaking but here ya go hopefully this helps people :D
Added edited to attachment:
-
WTF is this seed:
DrawText("-", 70, 45, 1, 5)
DrawText("+", 162, 42, 1, 5)
DrawText("Save", 80, 145, 1,5)
???
Is that integrated intot he Eufloria code without any of us knowing?
I mean, did I amke that text thing for nothing now? :/
-
Yup, it exists in the game...
Now I'm depressed, sorry guys :(
-
What text thing did you make and no not without us knowing i knew :D
-
This:
function DrawText(startx, starty, text, r, g, b, a, h, w, boldness)
--And here is a long function, supporting drawing text!
x = startx
y = starty
for i = 0, string.len(text) do
letter = string.sub(text, i, i)
if letter == 'A' or letter == 'a' then
DrawLine(x, y,x+(w/2),y-h, r,b,g,a,r,b,g,a,boldness)
DrawLine(x+w, y,x+(w/2),y-h, r,b,g,a,r,b,g,a,boldness)
DrawLine(x+(w/4), y-(h/2),(x+w)-(w/4),y-(h/2), r,b,g,a,r,b,g,a,boldness)
elseif letter == 'B' or letter == 'b' then
DrawLine(x, y, x+w, y-(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h+(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/8), x+w, y-(h/2)+(h/8), r,b,g,a,r,b,g,a,boldness)
DrawLine(x+w, y-h+(h/8), x+w, y-(h/2)-(h/8), r,b,g,a,r,b,g,a,boldness)
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+w, y-(h/2)+(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+w, y-(h/2)-(h/8), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'C' or letter == 'c' then
DrawLine(x, y-(h/8), x, y-h+(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/8), x+w, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h+(h/8), x+w, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'D' or letter == 'd' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w-(w/4), y-(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w-(w/4), y-h+(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h+(h/4), x+w, y-(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w-(w/4), y-(h/8), x+w, y-(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w-(w/4), y-h+(h/8), x+w, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'E' or letter == 'e' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'F' or letter == 'f' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'G' or letter == 'g' then
DrawLine(x+(w/2), y-h, x+w, y-(h/2)-(h/8), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-(h/2), x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-(h/2), x+(w/2), y-(h/2)+(h/6), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'H' or letter == 'h' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'I' or letter == 'i' then
DrawLine(x+(w/2), y, x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2)-(w/8), y, x+(w/2)+(w/8), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2)-(w/8), y-h, x+(w/2)+(w/8), y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'J' or letter == 'j' then
DrawLine(x+(w/1.5), y, x+(w/1.5), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/1.5)-(w/2), y, x+(w/1.5), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/1.5)-(w/2), y, x+(w/1.5)-(w/2), y-(h/8), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'K' or letter == 'k' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'L' or letter == 'l' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-(h/16), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'M' or letter == 'm' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'N' or letter == 'n' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'O' or letter == 'o' then
DrawLine(x+(w/2), y-h, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-h, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'P' or letter == 'p' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'Q' or letter == 'q' then
DrawLine(x+(w/2), y-h, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-h, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2)+(w/4), y-(h/4), x+w, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'R' or letter == 'r' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+w, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'S' or letter == 's' then
DrawLine(x, y-(h/4), x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/4), x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h+(h/4), x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h+(h/4), x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/4), x, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'T' or letter == 't' then
DrawLine(x+(w/2), y, x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'U' or letter == 'u' then
DrawLine(x, y-(h/4), x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/4), x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/4), x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/4), x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'V' or letter == 'v' then
DrawLine(x, y-h, x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'W' or letter == 'w' then
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'X' or letter == 'x' then
DrawLine(x, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == 'Y' or letter == 'y' then
DrawLine(x, y-h, x+(w/2), y-(h/1.5), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x+(w/2), y-(h/1.5), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x+(w/2), y-(h/1.5), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'Z' or letter == 'z' then
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == '1' then
DrawLine(x+(w/2), y, x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2)-(w/8), y, x+(w/2)+(w/8), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-h, x+(w/2)-(w/4), y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
elseif letter == '2' then
DrawLine(x, y-h+(h/4), x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h+(h/4), x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == '3' then
DrawLine(x+(w/1.5), y, x+w, y-(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/1.5), y-(h/2), x+w, y-(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/1.5), y-(h/2), x+w, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/1.5), y-h, x+w, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+(w/1.5), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+(w/1.5), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/1.5), y-(h/2), x+(w/2.5), y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == '4' then
DrawLine(x+w, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/2), x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == '5' then
DrawLine(x, y-(h/2), x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-(h/2), x+(w/2), y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-(h/2), x+w, y-(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/4), x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
elseif letter == '6' then
DrawLine(x+w, y-h, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x+w, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/2), x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == '7' then
DrawLine(x, y-h, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == '8' then
DrawLine(x+w, y-h, x+w, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y-h, x, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/2), x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == '9' then
DrawLine(x+(w/2), y-h, x+w, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-h, x, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-(h/2), x+w, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y-(h/2), x, y-h+(h/4), r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h+(h/4), x+w, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == '0' then
DrawLine(x+w, y, x, y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h, x, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y, x+w, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x, y, x, y-h, r,b,g,a, r,b,g,a,boldness)
elseif letter == '+' then
DrawLine(x+(w/2), y, x+(w/2), y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-(h/2), x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == '-' then
DrawLine(x+w, y-(h/2), x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == 'ยป' then
DrawLine(x+w, y-h, x+(w/2), y, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+(w/2), y, x, y-(h/2), r,b,g,a, r,b,g,a,boldness)
elseif letter == '/' then
DrawLine(x+w, y-h, x, y, r,b,g,a, r,b,g,a,boldness)
elseif letter == ":" then
DrawSprite(1,x+(w/2),y,r,g,b,a,boldness*3)
DrawSprite(1,x+(w/2),y-h,r,g,b,a,boldness*3)
elseif letter == "." then
DrawSprite(1,x,y,r,g,b,a,boldness*3)
elseif letter == "?" then
DrawSprite(1,x+w/2,y-h/8,r,g,b,a,boldness*3)
DrawLine(x+w/2, y-h/6, x+w/2, y-h/2, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w/2, y-h/2, x+w, y-h/2-h/4, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w, y-h/2-h/4, x+w/2, y-h, r,b,g,a, r,b,g,a,boldness)
DrawLine(x+w/2, y-h, x, y-h/2-h/4, r,b,g,a, r,b,g,a,boldness)
end
x = x + w + 5
end
end
and what do you mean with the last stuff: "no not without us knowing i knew"?
-
and what do you mean with the last stuff: "no not without us knowing i knew"?
Is that integrated intot he Eufloria code without any of us knowing?
Thats what i mean
-
Oh, damn... after all your work on that function Aino :\
By the way Kmercy, this was just a work in progress. If you want to see the completed level designer, go check out the thread called Roidforge.
-
Well, I'll begin use to other one, since it doesn't require so much CPU I guess :)
-
But how did you learn about it? Did you ask Alex, kmercy?
-
Nope didn't ask just knew it already ;P
-
How's it possible?
-
Different games with lua same commands really pretty simple stuff
-
It's not standard to the lua language so it seems like sheer blind luck that it happened to be the same command with the same variables passed as whichever other game you've modded in. Or perhaps these things tend to be standardised in the games industry..
-
In the mean time, I just designed an asteroid field and inserted it into the new level that I'm working on. :D
This tool should make it relatively simple to create huge, organic-looking asteroid fields, EG like Montezuma's Revenge. Hopefully some sweet levels will be designed with it!
wow - ive missed a lot!!!
annikk, let me know by PM when youre done with your newest offerings. samw goes for anyone else.
i have internet for the next 2 weeks (!) so im good for some updating...
this roid generator sounds amazing...
excellent work and thanks to you both for working on it. A and R must be delighted.
aws
-
Well, I got a beta test, not very successful though, about a multimap... like a random campaign :P
You can test if you want to :D
-
Hey AWS :>
This ultimately became RoidForge (http://www.dyson-game.com/smf/index.php?topic=1346.0). Not sure if it belongs with the other maps as its more of a tool than a level really. You should totally check it out though - it's really quite nice.. :>
-
Hey AWS :>
This ultimately became RoidForge (http://www.dyson-game.com/smf/index.php?topic=1346.0). Not sure if it belongs with the other maps as its more of a tool than a level really. You should totally check it out though - it's really quite nice.. :>
IT SHOULD BE AT THE TOP OF THE CUSTOM MAPS POST if you put it there!
This might encourage more people :D
-
I kind of think it should go under a seperate section for map-making tools. Euclid and all the others could go there too. Not to mention Aino's numerous useful functions such as GetScreenX.
-
alright people!!
im gettign the message that we need either a section or a totally new thread to do with Mods/ etc...
ill be honest and say it might be a while in the making if im the one to do it, which id gladly love to do, but if it is the will of the people, then sobeit ;D
Aino...
ive missed a lot of what youve been doing and designing and if youd be so kind as to PM links to each piece of code you'd like me to add to a 'mod' thread, then th job of compiling these things is made that much easier for me.
it also gives you a chance to tell me what you'd like to 'release' and what you'd prefer ti be kept more experimental until such that you feel it complete enough to have posted on a permenant thread.
same for anyone else- anniikk, pilchard, hitman etc etc....
if you want to send me links to those codes you'd like to see on a permanent thread, ill be able to make one much more easily and quickly.
just an idea anyway.
lemme know, peeps...
aws :D
-
The list is long AWS, and it grows :D
Dunno how I should to it, I got a tons of things out here... Like the GetMouseX() and Y... But I've forgotten alot since I'm working on Adventure... Maybe you find them in the long list of topics :/
-
The list is long AWS, and it grows :D
Dunno how I should to it, I got a tons of things out here... Like the GetMouseX() and Y... But I've forgotten alot since I'm working on Adventure... Maybe you find them in the long list of topics :/
yeah , i was praying i wouldnt have to go through the ever lengthening list of topics!! :(
sobeit...but it will take a long time, with my lack of regular internet.
as a side note - annikk's roidforge is AMAZING!! it will save SO much time and energy.... thanks dude. this is excellent development...
-
::) ooo yes a perm. thread for levels would rule ... :P
minecraft <3 my other addiction
;D