Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Mavra 2D


JohnPony
 Share

Recommended Posts

> **The Mavra2D Framework**
>
>  
>
> Mavra2D is a lightweight, highly customizable open-source framework that can be used to develop 2D games or other applications using [XNA](http://www.microsoft.com/en-us/download/details.aspx?id=27599).  Compatibility with [MonoGame](http://www.monogame.net/) has been ensured so that you may distribute your games on a variety of platforms including, but not limited to, Windows, Linux, and Mac OSX.  Mavra2D enables developers to make full use of [Tiled Map Editor](http://www.mapeditor.org/) by leveraging and converting [TiledSharp](https://github.com/marshallward/TiledSharp) objects to usable code.
>
>  
>
> Mavra2D is and always will remain a completely free, open-source project that is licensed under the [GNU General Public License v3](https://tldrlegal.com/license/gnu-general-public-license-v3-(gpl-3)).  We gladly and appreciatively accept donations of any amount to help aid in maintenance, hosting, and continued development costs.  We plan to migrate the library to other technologies in the future.
>
> This topic is used for comments, suggestions, and questions only.  More information and documentation regarding the framework can be found at [http://mavra2d.net](http://mavra2d.net).

I'll keep this updated. If anyone has any questions regarding this project, just leave them here and I'll pass them on.
Link to comment
Share on other sites

  • 6 months later...
> So does this come with a sample game to learn from? I don't know much of coding so a sample game would help.

Unfortunately I never had time to write an example of use; the site itself is unfinished too. By Christmas I hope to launch an updated version and finish all of the docs; ill be sure to include an example.
Link to comment
Share on other sites

  • 2 weeks later...
Is there honestly any market for open or closed source SP and/or MP game engines? I was pondering the scope of the market segment (and its demographics) id be working with if I decided to take this framework and make something fairly special with it (what most of you refer to as an "engine").

It feels more than a little redundant when Unity has an amazing pipeline for 2D content. Would and better yet is the allure of Mirage and platforms like it simply "plug 'n play" without having to be overly involved (or at all) in writing your own algorithms/code?
Link to comment
Share on other sites

The answer is pretty easy: specialized tools always have their niche. Look at RPG Maker. :) But it has to be just that, specialized. A general framework like Mavra 2D is unlikely to ever be used since you're right… other great "general purpose' tools already exist.

Eclipse is popular because it's not general purpose, it has a narrow scope of allowing people to create an online game. If Mavra is to suceed, it has to have a killer feature that existing engines don't have.
Link to comment
Share on other sites

> The answer is pretty easy: specialized tools always have their niche. Look at RPG Maker. :) But it has to be just that, specialized. A general framework like Mavra 2D is unlikely to ever be used since you're right… other great "general purpose' tools already exist.
>
>  
>
> Eclipse is popular because it's not general purpose, it has a narrow scope of allowing people to create an online game. If Mavra is to suceed, it has to have a killer feature that existing engines don't have.

Eclipse isn't a challenge though (to me personally). As a developer, and I'm sure you feel the same way, its incredibly nice to have "bare metal" frameworks that you can leverage to create something like Mirage and that was my goal.

Perhaps I'll just keep expanding Mavra and keep it updated alongside Mono.
Link to comment
Share on other sites

  • 1 month later...
**Change Log for Pending Release (10/04/2014)**:

* Added _Physics.Collision_ namespace. Includes:

* CollisionEventArgs
* CollisionHandler
* IPhysicsComponent2D
* PhysicsBody2DBox
* PhysicsBody2DCircle

* Added _Graphics_ namespace.  Includes:

* IDrawableEntity

* DrawableEntity
* Added extension methods for List in conjunction with List * List()._PhysicsBody2DCircles()_;
* List()._PhysicsBody2DBoxes()_;
* List()_.UpdatePhysicsComponentPositions(Vector2 newPosition)_;

* Fixed issue with LinkLabel's CenterText property not properly aligning text with collision box.

The point of these additions is to offer direct physics support within DrawableEntity which game objects can inherit from.  DrawableEntity includes a **List PhysicsComponents** that stores physics objects.  Physics objects have their own ObjectTag (string, name of the object they belong to), position, and offset. This is all abstracted away and decoupled from game specific code.  

DrawableEntity also contains a HandleCollision event that can be subscribed to and that is raised when a collision occurs. CollisionEventArgs returns an ObjectTag; it specifics the name given to the physics object that was collided with and is set at run time via a constructor. This provides the necessary utilities for each object to know what it collided with and for you, as the developer, to determine the appropriate action based on that information.
Link to comment
Share on other sites

**Change Log for Pending Release (10/05/2014)**:

* Added Vector2Extensions.cs to Physics namespace, Includes:

* _Vector2 Orbit(Vector2 origin, float degrees)_

The above function returns a translated Vector2 that creates an orbiting effect centered around the given origin at the specified degrees (converted using MathHelper.ToRadians) per call.  

Example of Use:

```
var position = new Vector2(10, 15);
var origin = new Vector2(10, 10);

position = position.Orbit(origin, 1.5f);

```
Link to comment
Share on other sites

> Eclipse isn't a challenge though (to me personally). As a developer, and I'm sure you feel the same way, its incredibly nice to have "bare metal" frameworks that you can leverage to create something like Mirage and that was my goal.

Eclipse is very easy to use, that's why it does well. The language doesn't matter to the developer, it only matters to the programmer.
Link to comment
Share on other sites

> Eclipse is very easy to use, that's why it does well. The language doesn't matter to the developer, it only matters to the programmer.

You're drooling over semantics, Seth. Application Developer*

I can get a game screen and an object moving in that screen (state machine) in less than a minute, no joke. That means Mavra is easy to use, right?
Link to comment
Share on other sites

> I can get a game screen and an object moving in that screen (state machine) in less than a minute, no joke. That means Mavra is easy to use, right?

No, programmers don't even need you to do that for them. Why would I use your code over my own? There's no use. If I want to use an engine, it should be complementary and specific like Eclipse. Even an experienced programmer would step away, just look at Netgore. It didn't make it nor will Mavra with that design mindset.
Link to comment
Share on other sites

> No, programmers don't even need you to do that for them. Why would I use your code over my own? There's no use. If I want to use an engine, it should be complementary and specific like Eclipse. Even an experienced programmer would step away, just look at Netgore. It didn't make it nor will Mavra with that design mindset.

You just tried to refute the entire ideology behind open-source software, Unity, UDK, Frostbite, and every other "engine" in existence. Congratulations on your nomination for a Darwin award. :)
Link to comment
Share on other sites

> You just tried to refute the entire ideology behind open-source software. Congratulations on your nomination for a Darwin award. :)

No, Netgore is probably far better than Mavra. The problem is that the generic library is not of that much help, and limits the programmer typically in a not so good of way. When you make an engine specialized for a specific purpose, it allows the developers that want a game in that direction an easier starting point rather than a bunch of functions that they have to learn.

You can have a few programmers use your engine or a couple thousand developers. You make your mind up on that one, I wont.
Link to comment
Share on other sites

> No, Netgore is probably far better than Mavra. The problem is that the generic library is not of that much help, and limits the programmer typically in a not so good of way. When you make an engine specialized for a specific purpose, it allows the developers that want a game in that direction an easier starting point rather than a bunch of functions that they have to learn.
>
> You can have a few programmers use your engine or a couple thousand developers. You make your mind up on that one, I wont.

You can also have a few thousand "developers" think they know what they are doing when they do not. Developers come up with the ideas that us "few" programmers then have to design, create, test, fix, and every thing else. Developers only provide the inspiration, the programmers are what really bring games and other programs to life. In total I would say the ratios of game development is 60% programmers, 35% artists and 5% developers as without the other two your "developments" will NEVER come to fruition.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...