When comparing LÖVE vs AppGameKit 2.0, the Slant community recommends LÖVE for most people. In the question“What are the best 2D game engines?” LÖVE is ranked 3rd while AppGameKit 2.0 is ranked 25th. The most important reason people chose LÖVE is:
The [LÖVE forums][1] are extremely helpful. With people checking the forums every day, it won't take long to receive answer to your questions on the Support board, receive feedback on games you post in the Projects board, as well as have a chat about the LÖVE engine while learning tricks to use in the very active General board. If you need an immediate answer though, or just want to chat, there is a very active and helpful [IRC channel][2]. [1]: https://www.love2d.org/forums/ [2]: http://webchat.oftc.net/?channels=love
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Active and very friendly community
The LÖVE forums are extremely helpful. With people checking the forums every day, it won't take long to receive answer to your questions on the Support board, receive feedback on games you post in the Projects board, as well as have a chat about the LÖVE engine while learning tricks to use in the very active General board.
If you need an immediate answer though, or just want to chat, there is a very active and helpful IRC channel.
Pro Uses the fantastic Lua for scripting
Lua is an embeddable scripting language designed to be lightweight, fast yet powerful. It is used in major titles such as Civilization as well as a lot of indie games.
Lua is very popular because it provides "meta language" features. You can implement object-oriented structures, or pure procedural functions, etc. It has a very simple C interface, and gives the engine developer a lot of flexibility in the language itself.
Artists tend to love Lua too because it's very approachable, with plain and forgiving syntax.
Lua is free open-source software, distributed under a very liberal license (the well-known MIT license).
Pro Easy to understand and use
Lua2D handles loading the resources, reading input, playing sounds and displaying stuff on the screen. Only the logic is left for the developer to write. It also removes the overhead of having to use and learn a GUI game editor. All you need is a knowledge of Lua and your favourite text editor or IDE.
Pro Cross-platform
Supports Windows, Mac OS X, Linux, Android and iOS.
Pro Open source and free
The LÖVE engine is licensed under The zlib/libpng License (which is very short and human readable) which allows you to use the source code and even modify it as long as you do not claim that the original source code is yours.
You can obtain the code at this bitbucket repository and even help fix bugs and participate in the development of LÖVE.
Pro Many examples and libraries with source code
There are plenty of open source examples of games or components built by the community that are ready to use or learn from.
Pro Very good documentation
The LÖVE wiki provides full documentation of its easy to use Modules, which are conveniently located on the side bar of the wiki. It only takes seconds to find the module for love.keyboard, which provided a list of all functions along with arguments and examples where the function could be used.
Pro Great for prototyping
You can learn the basics very quickly and start making simple games in no time, even if you have no previous Lua knowledge. If you're a little experienced with LÖVE, you can prototype a 2D game with it in no time.
Pro Can develop within Android
It is possible to develop games directly on a tablet or cellphone with the Android system by using the experimental Android branch.
Pro Very good for education
That is a great tool for teaching novice programmers. Creating a game on LÖVE, you have to think about developing, not about the syntax of the language.
Pro Many tutorials on the internet
Has several tutorials in several languages on the internet, mainly on Youtube.
Pro C++ and Lua one of the best languages for gamedev
Because all professionals in gamedev use C++, and Lua the fastest scripting lang.
Pro Cute name
So much love.
Pro HTML5 support
The AppGameKit Basic can now export to HTML5.
Pro Cross platform
Supports developing games for Android, iOS, PC, Mac, Linux and now HTML5.
Pro You only need to to pay for the license only
There is no charge for upgrades, or for extra platforms (the HTML5 version just appeared in the latest version), there are no subscription fees or other usage charges. If you publish onto either Apple or Google's stores you will have to pay their costs, of course, but the makers of AGK do not take a cut of this themselves.
Pro Plugin support for Windows
Plug-ins can now be added to the Windows platform. Create your own Tier BASIC commands and call them using the AppGameKit Basic script language style.
Pro Instant testing on multiple devices at once
AppGameKit supports instant testing on all connected devices. With the push of a button you can run your game on any device connected to the development machine.
Pro Excellent documentation
Every function is fully documented with examples and exercises. The Tutorial PDF is a full Introduction to 3D game programming with integrated references to every functionality and its most important usecases. The documentation is regulary updated.
Pro Easy basic programming
Program in tier 1 BASIC programming for every 3D game need.
Pro Raspberry Pi free version available
A Raspberry Pi version is available and free. Users just need to register with the developer and then they can download.
Pro Very fast compilation
It is a compilation based language, but the compilation is very fast. A project of about 1800 lines of code, for example, can compile almost instantly. (That's because it does not compile, it's an interpreter)
Pro Support
Informed, timely and intelligent feedback from the AGK forum.
Pro Fast development
There are plenty of functions which facilitate development and deployment. For example, the AGK player immediately plays the updated bytecode on Android devices then the online site helps with building an APK file for Google Play Store in minutes.
Pro Uses a powerful scripting language built for game development
Software produced with the App Game Kit is written in a language called AGK Script. This language has powerful inbuild commands including commands for 2D graphics, physics and networking. The commands make use of the platforms' native functions to improve performance. They are also designed to enhance code readability. The AGK Script commands have extensive online documentation.
Pro C++ and Basic, you have the choice.
It runs fast with BASIC but if you want more you can use C++, it's also easy to use.
Pro Can be used for advanced games programming in C++
Libraries which provide the same functionality are available for the five platforms, so you can code in C++
Pro Comes with an Integrated Development Environment (IDE)
AGK comes with an Integrated Development Environment (IDE) based on the Code::Blocks IDE for writing AGK scripts. A key feature of the IDE is its ability to broadcast compiled programs to other devices for testing.
Pro Performance
Cons
Con Not very powerful
The engine has very few modules and only the really required one, you'll have to do almost everything from scratch.
Con Game distribution is harder than it should
The process to create an executable could be streamlined: the dedicated wiki page is somewhat confusing, and the actual process either means relying on one of the various community-maintained tools or creating an executable manually for each platform.
Con More of an API than a game engine
It may come with graphical, audio and IO but it lack most features most game engines have such as UI system, pathfinding, etc. and you have to implement most of the stuff you might want manually.
Con Only for the very simple games
Con Documentation is very dry and technical
The site has plenty of tutorials, true, but they all read very technical, and explain very little. This might be too much for beginners, even for coding purposes, because of the fact that the specifics aren't explained well enough to learn effectively. The docs can be found frustrating to understand even the basics, such as tables or the like, because of how poorly they are explained, and how few examples are given before expecting you to be able to use them.
Con Game distribution for Android is a pain in the Arse
It is like you're doing a science experiment.
Con HTML5 support
Depends on love.js for HTML5 distribution which is old and incompatible with current Emscripten / LLVM version.
Con Absolutely no GUI (no graphical interface)
This has no graphical interface at all, you have to know how to read script in order to know what you're looking at. After you've written the script for everything, you compile it to see the result. It's a very poor way to create a game, given how even most professional tools out there give you a GUI to work with and debug on the go. The lack of a GUI slows down the work by ten-fold, and it's just an inefficient use of your time.
Con The community seems juvenile
For example, some of the library include names such as HUMP, LUBE, AnAL.
Con Restrictive virtual buttons
"AppGameKit" does not grant editing the very basic parameters of virtual buttons such as font and text size. The only method some people suggest is to use an image for every single "button".
Con Terrible scripting language
MS Basic from the 70's has more features. Procedural, no OO, inheritance, basic user defined types with overloading. Nothing. It even has GOSUB.
Con BASIC language
Even though it supports C++, it's mostly C++ mapped to BASIC without OOP.
Con Can almost only do trivial games
The editor is rather limited, not fully polished, and 3D is missing some key functionalities (3D is work in progress).