[BIG REQUEST] Big games support

  • Katala

    Well if Functions and Array were simlar primitives in C2 then that would be over all beneficial.

    Instead of Array.ValueAt(0,0,0) or even worse if your using instance arrays

    Compare Array.id = "arrayname" to get a specific array in an SOL to use.

    you can just use

    array[0,0,0] in your expressions. which is the way all programming languages access array data.

    or

    array[0,1,1] = some data

    same with Functions

    instead of

    Function.call("functin name", p0,p1,p2)

    it would be

    functionname(p0, p1, p2)

    In expressions the variable name is in expressions list. This makes using variable names impossible to use if you spell them wrong. The expression won't let you exit unless the var name is correct. Where as Functions require you to use a "string" paramater. So it's possible to use the wrong string name. Also when you change a variable name the change is caries over through the rest of C2. Where as in Function that's not the case. If you change a Function calling name you need to go manually change it everywhere.

    This would also lead to better scoping of functions.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • However I gotta say you need to pull up your sleeves and do some work. many of your requests require code writing programmers to do all the time, often with no benefit. All they have are lines of code and then they have to compile and execute. There are no visual tools and inspectors. In fact C2 has probably the most robust API of any game language ever. And yet there is complaint that it doesn't do AI, Isometric so on so forth. Fimbul most API's don't do what C2 does at all. they are first and foremost renderers and 3d/2d mathematical apis.

    Whiteclaws and jayderyu:

    I'm not saying Ashley should create a build-your-own-ai interface. I'm saying the plugin SDK should be good enough for me to create that myself.

    Check out Three.js, jaws.js, Pixl.js, Craft.js, Unity API, not a single one of these game engines can hold a match to C2 inferno in comparison of API. If you want to look at extensions done by other people then that's another matter, but that same principle applies here. Some one has done AI works, Isometric tiles and more. These other groups have produced massive games from rudimentary api's that have zero to no game logic and still pull of games like World of Warcraft.

    These other frameworks are flexible enough to allow you to use your own formats, and allow you to build your own tools - what is called a "pipeline". Do you think WOW programmers did everything in code? No! They obviously built their own map editors, dialogue editors, and everything else they needed to make a game.

    My point is that C2 is very impenetrable if you want to build your own tools to help you make your game - right now the only option is to crack open the XML files it generates and hope you didn't have a syntax error somewhere. I want ashley to make an IDE SDK so that I can make my own integrated editors to use inside C2.

    Most of C2's limitations aren't limitations to the majority of gaming industry. Because once they get to work they aren't waiting on Ashley to do the grunt work for them.

    Yes! Yes a thousand times this!

    The problem with C2 is that, often, when you run into a problem, you have to wait for Ashley to fix it. There are no official ways to fix things yourself. It's too focused on beginners, and advanced users (those who know javascript, even if just a little) are left wanting.

    Now you may ask, "hey, fimbul, why don't you use pixi.js instead?". I could do that - I know programming enough that I'm confident I could code an engine in pixi. However, I like the eventing system, I like the webgl effects, I like being able to easily change properties of my project, and have minification and png-compression. I like having Ashley focusing on performance while I cruise by.

    Look at how powerful unity's extensions are: you could implement construct 2 as a unity plugin if you wanted! Now look at how pitiful c2's plugin SDK is.

    Here are my main requests

    Functions and Array as primitives like the Number/String

    Modularity through Groups

    Asset store

    C2 IDE inherently group development tool.

    We are in agreement. Also agree with your proposal for how function syntax should work. I also want to add that, since arrays are primitives, you'd be able to pass arrays as parameters to functions - that would rock!

  • "These other frameworks are flexible enough to allow you to use your own formats, and allow you to build your own tools - what is called a "pipeline". Do you think WOW programmers did everything in code? No! They obviously built their own map editors, dialogue editors, and everything else they needed to make a game.

    My point is that C2 is very impenetrable if you want to build your own tools to help you make your game - right now the only option is to crack open the XML files it generates and hope you didn't have a syntax error somewhere. I want ashley to make an IDE SDK so that I can make my own integrated editors to use inside C2."

    When I do a "big" thing in C2, I create my own formats and tools inside C2 (HTML5 based tools), based on string elements, and I use a decoder Event sheet that take the file, interpret it so the game can use it, maybe I am missing the point here..

    "The problem with C2 is that, often, when you run into a problem, you have to wait for Ashley to fix it. There are no official ways to fix things yourself. It's too focused on beginners, and advanced users (those who know javascript, even if just a little) are left wanting."

    The problem with letting the user correct themselves is that at the end, I'm pretty sure the bugs wouldn't be reported (I know people that won't report a bug even when they know it perfectly, they prefer to wait, imagine if you give them ways to workaround.....)

    Fimbul

  • A lot of those negatives are possible to do, but it requires some programming knowledge or clever usage of variables. It should be labeled as "hard to do" rather than anything else imo.

    Look at this and be in awe of the UI, inventory, unit AI:

  • , yes, but said would be much simpler if post two's suggestions were a reality, I can see how C2 was geared to beginners from the beginning and was designed with that ideology, you could make any game with it, but limitations are imposed, CC was open source, I think, but C2 is paid, I can understand why it's closed source, but Ashley needs to give more love to extensibility

  • You can do a lot via plugins and behaviour if you can code JS. Ultimately all engines need additional plugins to give it features above and beyond the basic. For Unity this is more the norm, as you would have to buy additional plugins from other users. I do think Scirra needs to have a webstore for others to sell their work for other C2 users, its one of the major factor in why Unity is so successful.

    The vast majority of C2 users are not programmers (myself included) so we wouldn't have a clue on how to do a complex behaviour plugin in JS, but if there are user made ones that work, I am more than happy to pay some $ for their efforts.

  • Fimbul

    In regards to levels. R0j0hound made a plugin that does a good job of saving a Layout's object. While C2 can export a scene to JSON I found the result file to overkill. So using R0j0 plugin you can use C2 as a level edit, run the level, and get the the plugin string export to save to file.

    Aphrodite also has a good solution too. Also if your using Tiles you can use Tiled. The SDK isn't impenatrble. I've used to make a photon multoplayer client.

    Also the SDK allows you to render to game world. So you could render special information like pathing trails if anyone were to write a node based path system. The SDK also let's the dev to implement various Inspector options, values and so on. However, it would be really nice that the SDK let have more GUI control in the editor. Like new windows, rendering options to create say curve based value control. Ways of putting in the editor colour control for editor functionality.

    I'm just arguing on the point that there is a block to making big games. In fact this thread inspired and a the gajillion zillion down load thread inspired me to devlog on my mini multiplayer online game. The link is in my sig. Because let's see if we are really bound. Although you should check out Penelope and Our Darker Purpose,

  • jayderyu what's plugin are you talking about?

  • Fimbul

    In regards to levels. R0j0hound made a plugin that does a good job of saving a Layout's object. While C2 can export a scene to JSON I found the result file to overkill. So using R0j0 plugin you can use C2 as a level edit, run the level, and get the the plugin string export to save to file.

    Aphrodite also has a good solution too. Also if your using Tiles you can use Tiled. The SDK isn't impenatrble. I've used to make a photon multoplayer client.

    I consider those to be mere "workarounds": if you use R0j0's plugin, or even tiled, you end up making your game using some other IDE, outside construct. The construct "layout" ends up being a giant black canvas with random objects littered just outside it, since your map "loading" is being done externally.

    I have in the past created applications to facilitate map-making and stuff like that. My point is, it would be great if I could remain in C2 all the time. If I could hook into c2's interface I could create a rudimentary "tiled" clone that allowed me to place quick-backdrop/sprite tiles in the editor(since I don't like using the tilemap object), while at the same time populating arrays/defining obstacles/editing NPCs and stuff like that.

  • I just wanted to pop in and say I would also love a dialogue engine.

  • I just wanted to pop in and say I would also love a dialogue engine.

    The main point is that, while I want a dialogue engine, I don't want Ashley to be the one to do it.

    There are many great dialogue editors already out there, some even including support for localization. All we need is an official way to integrate them (rather than the current unofficial/unsupported/unstable method of editing the XML).

    I updated my second post (back in the first page) with a list of cool middleware, check it out.

  • Ah, nice! I would have suggested Chatmapper if you didn't already have it

  • While I think C2 has a lot of the things you can do to make a big game, it could be better in terms of UI options for plugins that would allow more control by 3rd parties on their functionality.

    The tilemap plugin with TILED support is a good example of a first party plugin that needs better support when relying on outside files for the content. A solution for tilemap would be to allow one to paste a CSV into a field for it to use that as a tilemap, as that's exactly how it's stored in the C2's XML. I can open up the XML and change it to my needs, but an in-IDE option to do that with a CSV file/string would make it so you could update realtime what that instance of tilemap is showing. It could be entirely for previewing purpose and have no effect on the object at runtime. (With an option to apply it to the object of course)

    Perhaps that kind of suggestion is possible with the current UI, but it's a rather simple suggestion compared to asking for windows which would be needed for bigger plugins.

  • I really find this post interesting, just wanted you guys to know

    You see potential in this simple little user friendly editor: Construct 2

    I like your commitment Keep up with these very important questions.

  • Well, I from the other hand stopped worrying about what is not included in construct and programmed everything myself from scratch only using build in objects and plugins. I did write fully functional and complex Inventory prototype that can be controlled with a pad, and with inclusion of whole rpg system maths to get the right stats values after changing the equipment, which took my 2 weeks roughly. I also did saving maps to external file, which works like a charm even when reloading in real time. Can't remember how long that took me but it was few days. Other times did stuff like random maps, looping maps, different types of ai, dynamic music, dynamic levels system and more. So as much as I would like some things to be simpler and even pre-made to be modified, they are not here yet, or will never be, and so best way is to just get on with it, and use what you've got. I now have loads of prototypes I can use in making one bigger rpg game.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)