Adam's Lair Forum

game development and casual madness
It is currently 2017/04/27, 01:23

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 9 posts ] 
Author Message
PostPosted: 2016/06/28, 07:15 
Junior Member
Junior Member
User avatar

Joined: 2016/03/02, 04:35
Posts: 48
Role: Observer
Last week I started tweeting about my progress with Duality, and since then, a few people came at me asking questions about the framework.

- "Is it cross-platform? Which platforms does it deploy to?"
- "Why don't you just use Unity?"
- "Will there be a Linux version of the editor?"
- "New engine means your game will feature multiplayer?!"

And it made me wonder: "What to expect from Duality in the future?". Well, I started by taking a look at the 3.0 milestone on GitHub, and I could not find anything other than "under the hood" and minor changes.

I recall taking a look somewhere on GitHub/Issues and reading something about moving from WinForms to Eto.Forms (or something similar), but I couldn't find it any more. I can't complain once I use Windows, but being able to use Dualitor in Mac and Linux machines sounds great. Especially when we take into account the fact that Duality is open-source and a slightly bigger community may come in handy (to speed up its development, especially).

Then I found something I stumbled upon some months ago: someone trying to run DualityLauncher in a Linux machine, and it worked (except for shaders, I guess). Any news about this (+Mac, of course)? Not sure if Duality in its current state will manage to become something cross-platform when it comes to playing and developing: if not, will it need an overhaul?

Same for networking... I've seen somewhere around the forums that it may be a bit tricky to get your game to have multiplayer as a stable and "built-in" feature. Is it something that will ever going to change? I mean, I am kind of indifferent since I'm not a big fan of multiplayer games, but the lack of it is probably a huge downside for most devs.

To finish, don't get me wrong about this thread, I'm not saying that I want it all and now, but it would be nice if we could know what to expect from the framework (especially because this could lead people to come and support it). I must say that I'm in love with it and even though I don't really know if I'll be able to get people with Linux and Mac machines to play my games, I'm still incredibly motivated to work with it because of its editor's workflow and speed. Plus C#. It's amazing!

Thanks for the attention! õ/


Top
 Profile  
 
PostPosted: 2016/06/28, 12:35 
Forum Adept
Forum Adept
User avatar

Joined: 2015/03/15, 02:49
Posts: 351
Location: Out there
Role: Hobbyist
In my oppinion, making Duality cross-platform should be a second thought. Sure, it would be nice, but we can kind of live without it.

If we can make all Dualitor related stuff through code, there's not a big loss, at least in the immediate future.

Making games compile and run is more important, because prospecting devs want to see their games run on their target platform.

But I'm a bit stupid, so yeah.

_________________
Hello there! Nice to meet you!
I have github. Apologies in advance for bad coding practices.


Top
 Profile  
 
PostPosted: 2016/06/28, 15:24 
Forum Adept
Forum Adept

Joined: 2015/07/08, 16:41
Posts: 414
Role: Gamer
Just chiming in about the cross-platform concerns, here's a link to read to get some info about how Duality is structured so as to provide compatibility: GitHub Wiki

Basically, the target platform needs to have a backend written for it, and stuff. The current Desktop backend is actually using OpenTK, so it should be pretty cross platform as well.
Then your target platform needs a Launcher written, to provide an entry point for the engine.

You can find some more forum threads about that discussion if you look around. Sorry I can't write more, I'm kind of in a hurry.


Top
 Profile  
 
PostPosted: 2016/06/28, 20:14 
Forum Adept
Forum Adept

Joined: 2014/12/13, 00:11
Posts: 397
Location: Brazil
Role: Gamer
indiemaatheus wrote:
Then I found something I stumbled upon some months ago: someone trying to run DualityLauncher in a Linux machine, and it worked (except for shaders, I guess). Any news about this (+Mac, of course)?

If Duality runs on Linux (I even managed to run all the available samples at that time in my crappy machine which was running Manjaro!), it should pretty much run on macOS.

indiemaatheus wrote:
I recall taking a look somewhere on GitHub/Issues and reading something about moving from WinForms to Eto.Forms (or something similar), but I couldn't find it any more.

Take a look here.

_________________
I only know the basics of C#. I have no advanced knowledge.


Top
 Profile  
 
PostPosted: 2016/06/28, 22:08 
Site Admin
Site Admin
User avatar

Joined: 2013/05/11, 22:30
Posts: 1949
Location: Germany
Role: Professional
indiemaatheus wrote:
Last week I started tweeting about my progress with Duality

Yep, I noticed ^^ Nice gifs btw.



But now, let's get to the core question, and let me preface this with one thing that I have found myself reasoning a lot lately.

Duality development isn't as fast as I'd like it to be. Why is that? Because when I developed the core and main editor parts, I was a student with plenty of time. With occasional limited downtimes on my side (master thesis, etc.), this has eventually changed by the end of last year: I'm now working full time, and compared to before, the time budget that I have available for Duality is tiny. Subtract supporting people using it and reacting to bug reports and issue discussions and I'm left with not a lot to work with.

So what do I do? There's basically two options.

Option A: Somehow securing a sort of funding for Duality development, so I can work less than full time and spend more time with Duality. This one I can unfortunately rule out for the moment, because funding requires more public interest and a bigger community than Duality has managed to gather so far. As much as I'd be up for it, I don't see this happening right now.

Option B: Being more efficient. I can't do a lot, so I'll have to make the limited stuff I do really matter. What would the highest impact contribution be that I could possibly do? As unexciting as it sounds: Maintenance, management and large-scale changes to code structure, APIs, and architecture.

This is not a chore, for me at least. This is what matters. It may be a personal thing, but I do value the experience as a developer a lot more than big new features I can advertise towards newbies. Yes, there is value to those big new features! But I'd much rather revisit some API decisions and improve the quality of the system as a whole than, for example, start to implement a new multiplayer system.* I don't want to (and honestly can't) deliver a finished, off-the-shelf product that solves all your problems. What I do want is work towards creating an open framework that everyone can contribute to and benefit from.

* Attentive observers may notice that I in fact just spent the past months developing a new tilemaps plugin. Yes, that's totally something new and it doesn't fit the image I'm portraying above. Totally right. Let's put it like this: I have that dream, where I (one day) actually use Duality to make a game :D This may be a step in that direction for me. Also, I've just always wanted to do those tilemaps.

But I digress! Sorry about that ^^ Multiplayer, right? There will be no multiplayer system. This can be done perfectly with plugins only, I have no idea about multiplayer tech and this by and large is a perfect match for the definition of a big new feature that would keep me busy and blocked for months. It just makes more sense if I'll leave that one to the community.

Then we have that required cross-platform overhaul you mentioned. That's actually done! It was what Duality v2.0 did. Theoretically, Duality should now run on Windows, Linux and MacOS and should have the potential to be ported to Android as well, though anything mobile will still be a lot of work. As far as Linux and MacOS go, there have been promising experiments of just running Duality samples on them, without any user porting effort. Not everything worked out of the box in all cases, but it's more a matter of fixing a few issues than actually having to port much. That said, I did play some sessions of SirePi's game Broken Galaxy on a Macbook by now.

So why don't I advertise Duality as cross-platform? Because I don't have the time to pull off official support for that right now. I'm pretty sure someone who is reasonably experienced could deploy something to Linux or MacOS. There definitely will be issues, but I think we're almost there. I do hope for some Pull Requests when people actually start to deploy to MacOS and Linux.

But what about porting the editor to a different platform? That one is not going to happen anytime soon, although I do like the idea. It's the kind of work that I would consider requiring my personal attention, but it's simply too much work to be viable for me to start it, given the limited time budget I currently have.

You also mentioned the v3.0 milestone: Yes, these are mostly a lot of under the hood changes. Major version steps in Duality don't necessarily mean big new features, but they are the only version steps where semantic versioning and backwards compatibility allow me to introduce breaking changes. Thus, major version steps are ideal for refactoring and restructuring the framework. Cleaning up, making Duality a better place! The way you put it, v3.0 sounds a bit dull, but personally, I can't wait to start working on that. I'm going to investigate an improved preview system in the editor, and revisit how your renderers will communicate with the render pipeline. Also, discarding OpenGL fixed function and moving vertex transform to the GPU. Exciting stuff! ^^

So.. uhm.. I hope this was remotely what you imagined as an answer. Did I even answer the question?

Quote:
"Why don't you just use Unity?"

I don't know. Because people are different and not everyone values the same things?

_________________
Blog | GitHub | Twitter (@Adams_Lair)


Top
 Profile  
 
PostPosted: 2016/06/29, 02:18 
Junior Member
Junior Member
User avatar

Joined: 2016/03/02, 04:35
Posts: 48
Role: Observer
Quote:
Yep, I noticed ^^ Nice gifs btw.

Thanks! Well, whenever I manage to achieve something, I tend to tweet about it. I'll keep hashtagging #duality2d. Not much but this is only way I contribute with Duality right now. :P

Quote:
So what do I do? There's basically two options.

Yeah, I even thought about option A but didn't mention because of the exact same reason you stated. I was going to tell you to follow Aseprite's steps in the future: releasing on Steam. Sooo many people got to know about it via Steam. :)

Quote:
So.. uhm.. I hope this was remotely what you imagined as an answer. Did I even answer the question?

Definitely! I understand and agree with everything you've written.

Quote:
I don't know. Because people are different and not everyone values the same things?

I should tell them that, lol.

Thanks for the heads up! :D


Top
 Profile  
 
PostPosted: 2016/07/04, 16:07 
Forum Adept
Forum Adept
User avatar

Joined: 2015/03/15, 02:49
Posts: 351
Location: Out there
Role: Hobbyist
Unity is a behemoth of a download. I mean, really. Use that as a justification.

I got to make my laptop a dual-boot machine...

_________________
Hello there! Nice to meet you!
I have github. Apologies in advance for bad coding practices.


Top
 Profile  
 
PostPosted: 2016/07/28, 04:19 
One-Hit Wonder
One-Hit Wonder
User avatar

Joined: 2016/07/28, 03:58
Posts: 1
Location: São Paulo, Brazil
Role: Professional
Actually, I really like Duality having a somewhat narrower focus in features. I don't see the value in trying to create a huge platform and try to compete with engines with big investment (Unity) or big communities (Godot). I think we should try to grow the community, participate in more jams and events with Duality, maybe? Also, a Patreon could maybe be a form of funding that is less formal to help Adam to dedicate more time for Duality's dev?

I'd like to say: in addition to a nice dev tool, I think Duality has the potential to be a great learning and teaching tool for game development students and teachers. It has a clear architecture, fully-featured visual editor and extensibility. The ideia of keeping the editor with the game build is great for educational uses. Of course, it being free software is crucial too, specially for schools and universities in developing countries that do not have the resources to buy expensive educational licenses.

I teach game dev in Brazil and I just found out about Duality and I'm looking forward to experimenting with it in the classroom next semester. I'll try to post a bit about it later on and try to come up with ways to feed what we create back into the community. Who knows I can get some students excited about tooling and making plugins? :)

Cheers and thanks for the great tool!

_________________
Twitter | Website | Github | Itch.io


Top
 Profile  
 
PostPosted: 2016/07/28, 18:41 
Site Admin
Site Admin
User avatar

Joined: 2013/05/11, 22:30
Posts: 1949
Location: Germany
Role: Professional
Thank you ^^

enricllagostera wrote:
I teach game dev in Brazil and I just found out about Duality and I'm looking forward to experimenting with it in the classroom next semester. I'll try to post a bit about it later on and try to come up with ways to feed what we create back into the community. Who knows I can get some students excited about tooling and making plugins? :)

This would be awesome! Looking forward to what your students come up with :)

To be honest, it never really crossed my mind that Duality could have the potential for educational use, but I would be quite happy if that turned out to be someday.

enricllagostera wrote:
Actually, I really like Duality having a somewhat narrower focus in features. I don't see the value in trying to create a huge platform and try to compete with engines with big investment (Unity) or big communities (Godot). I think we should try to grow the community, participate in more jams and events with Duality, maybe? Also, a Patreon could maybe be a form of funding that is less formal to help Adam to dedicate more time for Duality's dev?


I've been considering Patreon on and off a lot. There may come a day where I actually set up a page, we'll see ^^ Also, completely agree with the event and game jam sentiment. In addition, I might get myself to present it somewhere should the occasion arise.

_________________
Blog | GitHub | Twitter (@Adams_Lair)


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group