formLESS is a simple GUI framework that provides a set of useful and common "form components" that will help you build a rich user interface for your game.
What sets formLESS apart from other similar resources is that it doesn't even try to draw the GUI for you, instead it provides all the functionality and logic you need and lets you build on top of it, allowing you focus on how to present your interface (in this sense, formLESS is NOT a predefined GUI interface that works out of the box). This is possible because formLESS components are thought to be attached to GUI elements, not as part of them, and are therefore kept separate from their representation. This means that you create your own GUI objects, define how they will look, and attach a component to them to provide the required functionality. This way you don't need to modify nor even look at how component objects work, you just embed them an use their values in your objects.
My assets: GMSDB (database system), GMGL (autoupdater & launcher), Autotiles Helper (auto tiling system), Jade UI (UI sprites)
Version 1.0.1. Published March 9, 2015
Created with GameMaker: Studio v1.4.1542
You can only review assets you've bought.
Broken, but looks neat
Tried to check out the included sample project, but it crashes due to undefined variable f, pressing, hover, value.... Basically the example seems to rely upon many instance variables, none of which are defined or set. I think I can make this all work--it's a clever system--but I'm going to have to do it without a functioning example to draw from.
how i use ds_list in a list_ui? how can i change varables ingame?
Its just perfect. A very good GUI concept. Its easy to use and very clear.
YYG should implement it into GMS2
Adaptable transparent GML - Total value for money
I found the extension overall pretty easy to use. Testing under windows was smooth and easy but when I tried to deploy it on Android I ran into a bug. While the author was fast to respond they were unable to help me at the time. For $2.99 I don't expect instant service so that's by no means a negative. Since the extension is in GML and well written I was able to find the bug and fix it myself. 100% Android friendly now :)
With regard to multiple forms that David F mentioned: Add the controller form per normal then make children instances from it. Add the children to your rooms and remove any initialisation code from them since that's all handled by the parent. Add your input checks to the children based on the elements they will be controlling. You can then have multiple forms in one room, or across all your rooms.
Overall I found this extension highly useful, flexible, and well written. While I lost some hours to a bug, I feel I know the code better for future projects.
When I got this asset I was expecting a certain amount of flexibility, which is what I got. I have a decent knowledge of GML and already had functions set up that would draw rectangles and lines in the look and feel of the game. This is important.
The reason I'm giving this two stars however, is that this asset works off of room coordinates. This, in my opinion, is stupid. Why would this need to be the case, its not like the character needs to be jumping on text boxes? This is a **UI** framework so why would its positions not be based on device_mouse_get_x_to_gui and device_mouse_get_y_to_gui and the GUI draw event? I had to HEAVILY tinker this to make it work on top of rooms/with scaled window.
Another idiotic feature I found while going through the code is that you cannot have multiple form controllers in a room. Working my way around this broke component lists which just frustrated the hell out of me.
Docs are great. If a v2 is made with GUI based coords I'll re-review.
Thanks for your feedback. You raise some really good points, especially about multiple form controllers, makes sense in the case you actually have more than one form.
The one I don't fully agree with is the coordinates and gui draw event. Since I can't know in advance if the controls will be part of a GUI that works on top of the GUI draw event or as regular room objects, you are right in pointing out that this should be more flexible in this sense, but I can't prefer one method over the other. The controls themselves though have to be placed based on room coordinates, otherwise there's no simple way to manage touch/mouse coordinates on the bounding boxes, especially with scaled viewports. If your controls need to be based on window coordinates, you should move your instances accordingly, and take that into account on the draw gui layer. Since I'm in fact working on a new version, I'd be glad to discuss with you about these issues by email, so feel free to contact me!
An Awesome Framework!
Well it works how it should! I can only advice to use the "Import all" function ;)
Works as advertised and the documentation is clear and precise. Looking at the code and the framework design, the author clearly knows what he's been doing.
At the time of writing, formLESS is a good starting point to create your GUI with. It's not a "complete" solution as it doesn't include elements for creating layouts. I guess it's called "form framework" for a reason. But I'm hoping that new elements will be added in the future.
I just bought this extension and it was completely worth it. It takes a little time to learn and setup but the publisher is extremely kind and willing to help. This makes creating forms a breeze which is saying alot!
This framework is fantabulous: you can use it for many different things and it saves you a lot of time. The publisher is very nice and helpful!
Simple and powerful
Very easy to use, easily customisable and capable of doing anything you need UI controls for. A great job!