ErekT's Recent Forum Activity

  • You can also use a loop like MPPlantOfficial said, here's a couple of implementations from Colludium and blackhornet that might help:

    The problem with that idea though is that you would indeed still be milking them, since you don't pay to keep the server running anymore, yet you still have access to it. At some point there wouldn't be money to pay for the cloud server anymore without a loss because nobody would be paying annually, yet their server would possibly need upgrades because of a larger user-base and bigger capacity and other things.

    Well it begs the question, why on earth did they commit to a cloud-based service in the first place? Was there popular demand for it? Maybe I'm missing something. But speaking for myself at least, I have no interest in it. Sync.com. pCloud etc, plenty of free and secure cloud services to go around.

    Edit.: Also, I think the users would feel more eased with the subscription model, and wouldn't consider subscribing and developing in C3 as risky as some of the users expressed.

    I think that would make a massive difference. Also, they'd best do it soon imo. It takes time to build a loyal user base. It takes some time to tear it down too. People don't jump ships that easily, but when they do they're gone. And I think the subscription deal (at least in it's current shape) is a big enough push to force many people to do it. I'm scoping for alternatives myself, checking out tutorials and getting a feel for things. Once I commit to a different tool I won't make it back here probably, regardless of how glorious C3 ends up becoming.

    Another thing to consider. If even loyal C2 users are starting to consider alternatives, despite everything, what does that say of how enticing this sort of deal appears for potential newcomers? I mean I have to assume Scirra have been considering all this hard, but in my own head it just doesn't make sense.

  • Good suggestions

    6. Better animation import support, similar to gamemaker, that automatically imports all the frames of animations correctly

    I'd also like to see:

    Atlas texture editing with origin points and polygon collision shapes.

  • Okay, this is all just my personal understanding of stuff.

    [quote:1qrom6he]Can anyone point me toward resources (in any form) which cover some of the big picture principles of 2D game design? For example, why are tiled backgrounds and tile maps recommended, and how big of a problem is it if they aren't used? (I've read through the documentation and understand the basic argument, but feel as if there's a bigger picture that I'm not quite grasping.)

    It's all about re-using content as much as possible to minimize A: time/effort spent making content, B: Graphics memory spent, C: GPU processing load, and D: Game size.

    Out of these four, only A is really relevant today unless you're making mobile games. Then you might need to pay some attention to B, C and D too.

    Whether they're AAA blockbusters or small mobile games, from 25 years ago or three months ago, most if not all games re-use assets all over the place. You might use six different bush variants for all 120 bushes in your game for instance and, if you're a bit clever about where and how you place them, no one will notice it's the same bushes used over and over again.

    I guess if you feel confused about how and why tiles are used and why they're even a thing then it might help to remember they're just another method to re-use assets, one that came about in the console/home computer stone age In the 80's and to a lesser degree early 90's, graphics processors imposed very very strict limitations on what a designer could and couldn't do. For instance the Nintendo Entertainment System (NES) had 256 8x8 tiles you could use for backgrounds at a time (normally). Each 16x16 pixel area on the screen had access to ONE out of four palettes you could use at a time, and each palette amounted to a grand total of FOUR colors. The NES, the Sega Master System, the Commodore 64 etc, all had those kinds of restrictions. So designing tiles that could be re-used over and over and be used seamlessly together was a crucial part of game design.

    2D hardware has been designed around using power-of-two tiles and sprites up to and including nintendo DS, because it's a neat way of doing things things in 2D. Saves memory, saves storage space, runs really fast if the hardware's optimized for it etc. 3D hardware is *not* optimized for it btw.

    The reason I mention all this is that tiles aren't really something you need to worry about with today's hardware. There are no limits. Or rather, the limits are so generous that you can do things pretty much any way you want as long as you don't blow the gpu's video memory or fill-rate budget.

    [quote:1qrom6he]We are also trying to understand sprite sizing issues, from the very basic question of "Does it really matter if they are squares?" to "What is a realistic size for sprites that will look good on contemporary phones?" We understand that graphics should be created as vector graphics, that they're supposed to be sized in multiples of eight, and that we will probably end up with two sets of graphics (a set for high-resolution browsers and a 'one size fits all' set of images for everything else). Some have suggested that the one size fits all sprites should be 64 x 64 pixels, but this seems *really* tiny.

    If you're doing vector graphics you can make it as big as you like and scale down afterwards. You'll need to consider how big you need those sprites to be in relation to screen-space. Different gameplay suits different sizes. A fighting game sprite takes up a lot more screen space than a soldier unit in an RTS for instance. Look at games similar to what you want to make and see what size relative to screen space they're using.

  • I got the impression C3 came into being because C2's editor was too tangled up with an outdated codebase or somesuch. So, to get rid of that limitation they had to rewrite the whole thing. I was perfectly happy to pay full price again for an editor overhaul, but now that it turns out to be subscription-based (wha??) I'll be needing some hefty incentives to switch from C2.

    The Construct community simply isn't the right market for this kind of payment model. Businesses will just roll with it, but hobbyists won't. Unity ltd recognizes this with their pay-to-own variant. Keeps hobbyists satisfied knowing they can "own" the software if they wish while businesses will keep on subscribing for updates and support regardless.

  • Can anyone point me toward resources (in any form) which cover some of the big picture principles of 2D game design? For example, why are tiled backgrounds and tile maps recommended, and how big of a problem is it if they aren't used? (I've read through the documentation and understand the basic argument, but feel as if there's a bigger picture that I'm not quite grasping.)

    Tilemaps are really a leftover from the 80's and 90's when memory and storage space were super-limited. You'd use small tiles of graphics that repeated seamlessly to cover large areas on the screen, kinda like how repeating textures are used in 3D games to save on memory. Nowadays they're not as relevant (unless you go completely ape with your assets) and mostly used by indies on a tight budget since they're very cost-efficient too.

    I've been asking this same question for years now. I read this on Tigsource before I even started looking for game making software options but have not come up with a clear answer. The general here is C2 is designed to accommodate images of all sizes so this power of two rule shouldn't apply.

    Someone please correct me if I'm wrong.

    Is this power of two thing a myth or was this really a requirement back in the day?

    From what I can tell this might be true during the SNES era.

    Yeah, old consoles like SNES and especially NES, Sega Master System etc had very strict sprite and tile size requirements which were all power-of-two. 32x32, 32x64, 16x16 etc.

    Here's a few fun threads from pixelation if you're interested in the kind of limitations NES developers had to wrestle with:

    http://pixelation.org/pixelation/index. ... ic=10057.0

    http://pixelation.org/index.php?topic=1 ... #msg144531

    http://pixelation.org/index.php?topic=19899.0

  • Yeah object variables are your best bet I think. I tried plopping all object variables into arrays once. Very cumbersome to deal with and didn't improve speed any, at least as far as I could tell.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Jayjay

    Yeah I went with javascript as the syntax is a bit simpler. But the scripting bit in Unity was actually fine. Apart from the platform behaviour I've built my own system for most things with C2 events already, more or less the same way I would with a regular scripting language. I think what rubbed me the wrong way was how you're supposed to integrate the scripting with the visual editor. Drag and drop scripts onto objects, and then they become components, and then you have to use GetComponent() to access other scripts and some other function to access other objects, and exposed variables that override the script and... I dunno, it just felt messy

    For Unity there's always uScript which is quite good actually. I agree with ErekT. Gimme an exporter like Chowdren and I'll be happy. Pretty much most engines and frameworks export to native.

    Yeah, fingers crossed Scirra start to take seriously the grievances users have with html5-only. I mean, it's starting to come around for the desktop platforms, but support for anything else seems either mediocre or non-existent.

  • Just had a look. Sweet! Thanks, now I can avoid the extra loop

  • Thanks guys

    I implemented Colludium's solution and it works great.

  • I have myself a bit of a problem. I want to pick the nearest instance to another instance, both of object 'Chr' and tried doing it like this:

    Local_X            (reference x-coordinate for instance A, passed to function)
    Local_Y            (reference y-coordinate for instance A, passed to function)
    
    Chr | Pick nearest to (Local_X, Local_Y)
    [/code:153lcdn6]
    But as I found out, instance A gets picked every time of course because obviously that's the instance closest to my reference x/y values. I'd like to exclude this instance from the picking somehow. Something like 'Pick nearest to (Local_X, Local_Y) that is not instance A'.
    
    Is that possible or do I need to do a manual bubblesort or something? Really hope I can avoid that.
ErekT's avatar

ErekT

Member since 17 Dec, 2012

Twitter
ErekT has 1 followers

Trophy Case

  • 12-Year Club
  • Email Verified

Progress

13/44
How to earn trophies