~Bump
This will probably get a redesign later.
The A-ngineer's Lab (Click to View)
So I've been working on this thing for about 2 weeks now; It's pretty much a program I intended to write to ease the whole hitboxes assigning and stuff (something like LF2's visual frame maker). However, as I've been working on it, I went on adding features here and there until it ended up being what it is now. A tool where you will be able to develop your A-Engine powered game's characters or objects like never before (well, its not like you've written any A-scripts before but whatever).
Before I start explaining what all these buttons do, put in mind that this tool's setup is as simple as putting its exe in the A-Engine's exe directory. It will go through your "load.txt", load the A-Files files and handle all the parsing by itself.
So the GOTO FRAME button at the top left let you go to what ever frame in the current A-File. The GOTO ID button will similarly load whatever .A file in your "load.txt":
This is a rather sluggish way to navigate between the frames, but it's not the only way available. Surrounding the canvas are two sets of "<->" buttons. The blue ones will navigate back and forth according to the numbers of the frame. Like say you have the frame numbers [0, 4, 6, 5, 8, 2, 9], and you're at frame 8. The blue ">" button will get you to frame 9, and the blue "<" will get you to frame 6. The green ">" buttons however, takes you to the frame stated by your "goto=", while the green "<" simply takes you to the previous frame that was in your canvas.
To the right of these buttons is a white box that previews the frame you're working on. A click on that box will allow you to directly edit the frame:
One the canvas itself are 2 perpendicular lines. These lines are what shows the position of your sprite in relation to its center. Centering a character properly will mean that his feet will have to be just on the horizontal line, while the vertical line will have to be placed on the sprite's vertical line of symmetry.
At the bottom right, you can see a set of radio buttons. "DRAW", for instance, will means you're in "Drawing mode". While in drawing mode, you can literally draw rectangles on the canvas as hitboxes for the sprite. Wether this rectangle is a "bdy" or a rect depends on whether you set the drawing mode to "RECT" or "BDY". Just like in any paint program, you can stretch and stress a rectangle by dragging one of its mini rects that appear on the main one.
"FOCUS" will similarly have you in "Focus mode", where you can't draw anymore. A click on a hitbox while in focus mode will render it "focused". A "focused" hitbox will show 4 mini rects on the vertices of the rectangle where you can resize the hitbox by dragging. A right click on a focused hitbox will remove it.
There is a third choice in "Focus mode" called "SELF". In that, you will be dragging around the sprite itself to correct its "center" value. In the future, I plan to have the sprite resizable while in focus since the Engine supports run-time transformation using the "set_transformation[]" frame component.
To the bottom of the canvas is an "ANIMATE" buttons. Hold that to see your frames animated (it also considers the "delay=" values of the frames and your game's FPS to show the animation right). In the future, I plan to change the button into a "SIMULATE" button, such that it applies the actual physics of the Engine to preview what will actually happen in the game.
At the top right, to the right of the preview white box, are two buttons: "+FRAME" and "+SEQUENCE". A click on one will let you construct a new frame by filling in a form:
I left out many other frame tags in the form, but the ones I did are the ones you will find yourself using 90% percent of the time. At the bottom of the form window, there is a "Frame Count: " field. Fill that in with the amount of frames your new animation contains. The tool will assume the sprites are consecutive in order, and will increment the "img=" values for the consecutive frames. Some times, you will find yourself worrying about overwriting existing frames, and that is when you will be checking the "Auto ID" checkbox. That will automatically make sure the frame ids given to the generated frames do not conflict with any existing frame's.
Finally, the the top right of the window are 3 "RSX" buttons. The red "X" obviously closes the program. The white "S" button saves and write any changes you've done to the current file. The Blue "R" button reloads the .A file again canceling any changes you've done and not saved yet.
So yeah, this is all the program is capable of so far, but I am still not very satisfied with the space in the bottom. If you've any ideas of any features that can be added there, please let me know.
Thanks for reading!
Before I start explaining what all these buttons do, put in mind that this tool's setup is as simple as putting its exe in the A-Engine's exe directory. It will go through your "load.txt", load the A-Files files and handle all the parsing by itself.
So the GOTO FRAME button at the top left let you go to what ever frame in the current A-File. The GOTO ID button will similarly load whatever .A file in your "load.txt":
Spoiler (Click to View)
To the right of these buttons is a white box that previews the frame you're working on. A click on that box will allow you to directly edit the frame:
Spoiler (Click to View)
At the bottom right, you can see a set of radio buttons. "DRAW", for instance, will means you're in "Drawing mode". While in drawing mode, you can literally draw rectangles on the canvas as hitboxes for the sprite. Wether this rectangle is a "bdy" or a rect depends on whether you set the drawing mode to "RECT" or "BDY". Just like in any paint program, you can stretch and stress a rectangle by dragging one of its mini rects that appear on the main one.
"FOCUS" will similarly have you in "Focus mode", where you can't draw anymore. A click on a hitbox while in focus mode will render it "focused". A "focused" hitbox will show 4 mini rects on the vertices of the rectangle where you can resize the hitbox by dragging. A right click on a focused hitbox will remove it.
There is a third choice in "Focus mode" called "SELF". In that, you will be dragging around the sprite itself to correct its "center" value. In the future, I plan to have the sprite resizable while in focus since the Engine supports run-time transformation using the "set_transformation[]" frame component.
To the bottom of the canvas is an "ANIMATE" buttons. Hold that to see your frames animated (it also considers the "delay=" values of the frames and your game's FPS to show the animation right). In the future, I plan to change the button into a "SIMULATE" button, such that it applies the actual physics of the Engine to preview what will actually happen in the game.
At the top right, to the right of the preview white box, are two buttons: "+FRAME" and "+SEQUENCE". A click on one will let you construct a new frame by filling in a form:
Spoiler (Click to View)
Finally, the the top right of the window are 3 "RSX" buttons. The red "X" obviously closes the program. The white "S" button saves and write any changes you've done to the current file. The Blue "R" button reloads the .A file again canceling any changes you've done and not saved yet.
So yeah, this is all the program is capable of so far, but I am still not very satisfied with the space in the bottom. If you've any ideas of any features that can be added there, please let me know.
Thanks for reading!
A-Engine: A new beat em up game engine inspired by LF2. Coming soon
A-Engine Dev Blog - Update #8: Timeout