You can update variable settings in the Debugger. However if C3 is running on JS backend such as Node/NW.js. Then it may be possible for "Exposed variables". However having created grid math in Unity that support "exposed variables". Unless the basic code supports grid math updates. Then tweaking the vars won't update the grid. And upadting the grid everytick seems to be overhead on the game logic. However a grid Plugin with exposed variables could be an other matter. And work nicely. I'll put in the exposed variable idea into the the section where the IDE supports live runtime.
I sympathize with you on the create by object name. I've sooo desired it myself. unfortunately due to string safety and obfuscation I suspect that this will never be in. however what you rmostly wanting is a switch case object creation, and maybe we can see this in C3 if the request for custom objects, and object reference get's added.
image textures are in the request.
Ladders are based on a plugin feature and don't really require architect changes. I've seen many ladders in various C2 platform games.
if( player is over ladder[spriteObject] && controller.up)
Do you mean you want the project properties and the layout properties in their own window?
Grid was just an example
Have a look at this.
In UE4 it's called a "Construction Script" - which more less are events that run only in the editor. And this blow my mind when I start using/learning UE4. Modifying, placing, whatever you can think of you can do with objects in the editor. Probably that kind of control we will never have, but even a small amount would be amazing.
"due to string safety and obfuscation" yeah I heard that a lot, but still with NW.js everyone with only few mouse clicks can take all your assets (graphics, sound, code... everything) without any problems whatsoever - even easier than with browser game versions. So "safety" is kind of contractual
I'm not arguing about not wanting it. I agree with you, but Ashley reason is solid from his point of view. I don't see it changing. There are some points that I don't think he will and that's one of them.
Well. I don't know what Ashley is putting in C3. I have no idea if he has looked over the document. I have no idea his opinions on it. However. Custom windows, with full gui and ctx acces will allow developers to create similar window as a BluePrint. Also I have requested custom data objects to store complex data, and I have put in the request list that any work done in an IDE Plugin can set values on an Object. So that visual statemachines, Blueprint, bezier curves can be made in C3. I say again. I've made the architect request, what happens is in Ashleys hands. I would love to make an IDE plugin that can do grid setup, landscape generation into the layout by way of IDE Scripts. All that yummy feature stuff is in the request list.
Obviously what we are doing here is just a "wish list" (from our, game developers point of view) of things that could help and make stuff easier in future game development. And it's entirely up to Ashley (and lets hope his future team, as a more than one person working full time on C3) to have a look and consider our proposals.
Things like "Construction Script" or beloved "native exporter for every platform" probably will never happen
But there's a lot of other stuff in this thread that are to good (and in some cases essential) to simply be ignored.
When C2 showed up for a first time (maybe few releases later...) it was great, wow, cool and all sweat and sugar. This is a true, I was amazed about a huge difference between C2 and CC. But it was 4 years ago. Meantime technology changed UE4 showed up, then Unity realized that it would be nice to have some kind of an update after a long time. and other engines get updates too etc etc... But unfortunately C2 is still in same spot. We had a few big updates, few technological addons to make everything work better, faster and smoother, but besides that... ?
Simple things, easiest and obvious one took forever to add... and there are still some idiotic things that probably will never be fixed.
How long we have been waiting to be able to use different hotspots in Tiled background for example. Or to use Tab in properties panel, hell Tab is still not working for grid setup....
So my biggest request for Ashley for C3 is to not fuck this up this time. Unfortunately after CC must say "again". C2 is very stable and ready for making games, but with all this small issues still looks unfinished. And in a year or two when C3 will be released I can bet that C2 will still have this small issues
ok. I'm off-topicing to much.
I want this thread and your list to evolve and be alive! because what I can see after only 4 pages is very usefull and must have. And in very depth of my heart I really hope that Ashley will consider what we are doing here.
Pretty much everything in here, yes please
Somethings I didnt see in here yet:
Something I saw and want to emphasize:
A dark GUI pleeeease, there is a reason why all professional software nowadays goes with a dark GUI, its mutch easyer on the eyes then retina burning white.
I know u can create your own color palette, and i did, but you cant color everything + the icons are black and gray what isnt the best for a dark theme
Something that will never happen:
Online collaborative editing of your game in real-time like heroengine, run arround in your gameworld with friends sticking "post-its" on everything that needs some work ...ahhh it was so mutch fun to work with
Something to think about:
I know most of the things kept easy in c2 to keep c2/c3 itself easy and quick to learn, and thats a good thing. But maybe we need something like an advanced mode or tab for more experienced users that are past this first learning curve.
Mostly because this is a architecture feature request list. The base components that will allow such features. Though sometimes I can misplace or overlook the meaning of a feature.
For example math expresion in property fields added.
you can make a plugin that has noise functions so that's not really architecture as C2 can do this.
I believe plugins/behaviours do work outside the layout. Just use unbound scrolling.
I've requested the engine to be NodeJS and use CSS. That would allow for incredible theming.
HeroEngine isn't an IDE or tool. It's a core game system. However I have requested that the engine support networking capability. So that such a feature could be made. Even is Scirra doesn't do so.
Develop games in your browser. Powerful, performant & highly capable.
sadly pathfinding doesnt work outside the layout even with unbound scrolling
Yes you are right, some are more like feature request, i guess.
But for example that all random functions work with a global seed and you are able to choose this seed, is very important if you want something procedural generated in your game.
On a personal note, I really dont want c3 to get like unity, where u have to buy plugins for everything.
For really specialised things, like the "collaborative editing thingy" it is awesome.
But on the flipside...
how can u tell which is the best for your needs? which is the most reliabl plugin dev? which is the easyest and are there any tutorials for this plugin? you dont know, so you have to start wasting time to find out.
I know there are many pros and I think everybody in here knows that. Its just a reminder that, while we all love plugins, there are some downsides to them and that we have to consider them too, when we tell ashley what the new version of the software we all grown to love should be like.
I'm not sure, but maybe you should file a bug report for the Pathfinder. Games are allowed to be played outside of the layout. Especially in a procedural generated game.
The way I see it. $10 is worth easily worth saving 2 days of work. In fact I work with Unity at my company. I have purchased a handlful of $10-$20 plugins that saved me months of work in total. $50 to buy or $5000 to make?
And even with the Store out now. People still make free plugins. So I have no worries
jayderyu At least to have some tabs on top in the left column. Currently th process looks like this: Aim for bottom-right corner to select tab, move tot he top-right corner to select either layouts or project folder, and them scroll across the screen to the properties bar. I know I can move those bars around, but it still requires navigating between bottom and top of the screen.
Few more things that popped out last night ( thought I'm confused now where should I post those ):
Lot's of great examples, some are very C2 oriented.
But I am hoping that C3 will be something more then just major update to C2
First, I think we need a forum for C3 to have multiple, better organized, threads
Some realistic suggestions (yep, there is overlapping with other people) :
And now impossible (native multiplatform, that dream we can’t fulfill):
As I see all game related stuff is drawing on canvas. On Android it is equivalent of drawing on the SurfaceView. But there is some other functionalities like location services, storage… and some other goodies that came with HTML5.
My suggestion is that those things should be treated differently and maybe in that way we could have wrapper-free mobile games. I know that with WebKit some things should be better, still haven’t tried on device, but as I see it, it is still a wrapper, even thou built in. What I would like is real native app, but without wrapper, and I think it is possible. Unity, Xamarin all have native apps with some kind of wrapper, thus big, slower… On the other side is Eclipse/Android Studio with small, fast apps, and never again development (must admit that there are games I haven’t updated for a long time because of them)
And now for the suggestion, contact that guy that makes Basic4Android (also iOS recently) and make some collaboration. Why, because I don’t know what kind of black magic he uses, but he has VBA ide (3mb in size) that can do almost all as Android Studio, live debugger is even better because allows runtime variable value change. And best of all, no wrapper or big overhead, Hello World app is the same size, totally java bytecode compatible, can even decompile to standard Java.
Now as I see it, all game related (effects, box2d…) is still just drawing on canvas and should be possible to transfer to SurfaceView, for example libgdx is working fine on b4a. As for extra stuff, some libraries should be made, but again, don’t think it is that complicated. All functionality is already available in libraries, just some calls should be rerouted.
So that’s my view, I know C2 is HTML5, C3 is probably the same, but it could make stride to multiplatform native, without dropping HTML5 support. Don’t know how exactly complicated is that, I stay mostly at least one level up from that abstraction when programming, but it looks doable.
I'm not against a native exporter, but I know Scirra won't do so. I know why too. Browsers do more than just execute JS. Browsers have huge amounts of features to take advantage of. For C2/C3 to support native would require breaking all those Browser features and linking to an abstraction layer.
Is it impossible. No, but it's not going to happen as a two man team. If C3 proves so successful that Scirra expands to 100+ staff. Who knows.
I'm hoping that SceneGraph based Object is added as a new core object. Pin would then be obsolete, though thep lugin would exist to be backwards compatible.
That is why I suggested basic4android for native support, it is maintaned by a single person, who is done wonders, showing that much can be done if someone know what to do and how, Xamarin with all that people programming still has 5mb Hello world app on Android.
But, don't want to turn this thread in pro/contra about native support, I was wondering if we could get animation system like in Unity, at least triggers, and some simplified states, morphing frames would probably be too much, but one can hope.
Also some tighter integration of sounds and objects, so we can assign sounds to objects or, now when I think about that, maybe easier solution would be to link specialized sheets to objects, not just for sound, but animation management, instance functions (not just varibles) as well, thus mimicking classes which I think is already suggested somewhere.
Agreed. This is not a pro/con for native support.
You did remind me that I would like Object EventSheets, but outside of better organizational programming. I have been unable to convince Ashley as of yet. but I'm going to put it in . However if Ashley supports the idea of a SceneGraph root object, then I'm not sure if Objective programming will be needed as much. Because every world object would be just the same object anyways.
SceneGraph concept looks nice as I understand it, it would be something similar to Unity approach to GameObject.
But it doesn't necessarily exclude Object EventSheets. With Object EventSheets it is easier to implement multi language/resolution/graphics support, you just include/exclude Sheets. Right now only way to change Sprite image is through code. My way of dealing with this problem right now is Groups, not very nice after some time, especially since it is reference by name which I addressed before.
If we are to get some resource management like in Android projects then multi language support won't be a problem, but EventSheets looks easier to implement with backward compatibility in mind. Even if you implement some property based support for graphics, resolutions, sounds... there are always some things that you need to do manually. Also possible include/exclude feature on export or loading level would also be nice for optimization.
Mentioning Unity reminded me that Sprite at least should be some kind of a generic GameObject with extensive material(texture) property.
What I hope Ashley has in mind is when to totally disregard our suggestions if that complicate usage to novice user
People, keep in mind that this thread is for architectural features in C3.
I'm going to give a list of suggestions that ARE NOT APPROPRIATE for this thread:
There's no point asking for features piecemeal, it's about asking for architectural changes that will enable us to create the most things using the least stuff. It's about making the engine versatile instead of a bag full of special cases (i.e. the tilemap and spriter extensions)
Also, for people talking about exporters, this is crazy talk. Don't ask for "native XYZ exporter", ask instead for "an exporter SDK"! I may or may not agree with you, but at least it's an architecture request.