Some noob questions about basic stuff

Discussion and feedback on Construct 2

Post » Wed Sep 07, 2016 12:54 pm

Hello,

I'm new. Like, really new to this. I went through the tutorial, read some guides, looked at some examples, and now I have some questions before I try to embark on anything big and perhaps buy myself a license.

This is like, really basic "every game" type stuff. Trying to think about how I can structure a project to be manageable, and try to avoid painting myself into a corner. Right now, I'm thinking I'll aim primarily for Windows PC w/ Xbox 360 pad gaming. Links to good tutorials are more than welcome! :D Don't shy away from sending me things that seem too in-depth for a noob. XD

A) Can you make user profiles? I mean, so player 1 can have their own set of save files and settings, and player 2 can have their own.

B) How persistent are save files? I mean, if they are stored in browser local storage, that doesn't sound at all safe to me (in terms of persistence). Can I write to the filesystem from within a game?

C) Does all data that needs to be shared between layouts need to be global? Or is there some way to pass only what's needed?

D) Can event sheet data be shared across layouts? Or can a layout use more than one event sheet? I am thinking for example - if I have an options menu in my game where the user can select a language to play the game in, can I have that global variable and all the functions to load the appropriate language strings from files shared across all the layouts in my game?

E) Can you make variables that are more complex than Text / Number? e.g. some kind of structure that contains several text and number values.

F) Can you build a library to reuse in different games? e.g. if I want to make main menu / options / language select / custom control setup settings into modules, to import into different projects, can I do that?

G) Are there any further limitations I ought to be aware of before starting?

Thanks in advance!
B
7
S
1
Posts: 3
Reputation: 381

Post » Wed Sep 07, 2016 2:35 pm

A - Yes you can, but you might want to get some experience using the engine, even finish a smaller game before you start implementing such functions.
B - You can create your own save system using JSON and NW.js.
C - Are you talking about global variables? You can also pass data using objects' instance variables. Just look into the manual to set them up properly. https://www.scirra.com/manual/73/instance-variables and https://www.scirra.com/manual/83/variables
D - Yes, you can include event sheets into each other. Just right click on an empty space on your event sheet and select "Include event sheet".
E - I believe you are talking about the dictionary object: https://www.scirra.com/manual/140/dictionary
F - Unfortunately you can't. The only way for this to work is to make a plugin.
G - Depends on what game you want to make. Keep in mind that this is a 2D HTML5 game engine. You can make serious games with it, but it takes practice (just like with any other engine). It's more likely that you'll first run out of hardware resources before you bump into an engine limitation. But if you have specific questions about limitations I try my best to answer them (for ex.: Can you do 3D? No, only with the Q3D plugin.; Can you export native applications? No, you can only export into either HTML5 or using wrappers to get an application (for Windows with NW.js)).
B
135
S
33
G
17
Posts: 1,559
Reputation: 20,732

Post » Wed Sep 07, 2016 3:43 pm

Thanks for the detailed (and friendly) answer!

I know I'm starting with "boring stuff", but I come from a boring web developer background. :)

So starting with a simple project that's just a bunch of useful menus and settings, that seem all neat and tidy, and that I can reuse on all my projects...

Somehow that just feels comforting, like I'm doing things right. XD

I've got ideas for 3 games right now, all of them entirely 2D and sprite based, none of them requiring so much as physics, and since I can write javascript anyway, Construct 2 seems like a good option.

(I did try out Phaser.js for a while, but... then I thought I wanted something a bit more full-featured. So I went and tried out Unity 2D for a bit... but..... it's kind of yucky, tbh...)

Is there a "writing a plugin" starter guide for Construct 2?

Seems ridiculous that I could run out of hardware resources... I mean, how resource heavy is this?
B
7
S
1
Posts: 3
Reputation: 381

Post » Wed Sep 07, 2016 5:32 pm

tenshialpha wrote:Thanks for the detailed (and friendly) answer!

You're welcome. Feel free to ask away. :)

tenshialpha wrote:Is there a "writing a plugin" starter guide for Construct 2?

I'm afraid I can only point you towards the SDK manual page: https://www.scirra.com/manual/15/sdk
And here's a tutorial I just found (not sure it's still relevant, since it's more than 4 years old): https://www.scirra.com/tutorials/352/pl ... script-sdk

tenshialpha wrote:Seems ridiculous that I could run out of hardware resources... I mean, how resource heavy is this?

No, Construct 2 is a lightweight engine. I meant that it's a common developer mistake to make games the way that they simply use up all of the computer's or phone's resources. Using non optimized code or unnecessarily big images, etc.. I'd suggest that you read the following pages before you start making a serious project:
https://www.scirra.com/manual/183/memory-usage
https://www.scirra.com/manual/134/performance-tips
https://www.scirra.com/blog/83/optimisa ... -your-time
B
135
S
33
G
17
Posts: 1,559
Reputation: 20,732

Post » Thu Sep 08, 2016 6:40 am

glerikud wrote:A - Yes you can, but you might want to get some experience using the engine, even finish a smaller game before you start implementing such functions.
B - You can create your own save system using JSON and NW.js.
C - Are you talking about global variables? You can also pass data using objects' instance variables. Just look into the manual to set them up properly. https://www.scirra.com/manual/73/instance-variables and https://www.scirra.com/manual/83/variables
D - Yes, you can include event sheets into each other. Just right click on an empty space on your event sheet and select "Include event sheet".
E - I believe you are talking about the dictionary object: https://www.scirra.com/manual/140/dictionary
F - Unfortunately you can't. The only way for this to work is to make a plugin.
G - Depends on what game you want to make. Keep in mind that this is a 2D HTML5 game engine. You can make serious games with it, but it takes practice (just like with any other engine). It's more likely that you'll first run out of hardware resources before you bump into an engine limitation. But if you have specific questions about limitations I try my best to answer them (for ex.: Can you do 3D? No, only with the Q3D plugin.; Can you export native applications? No, you can only export into either HTML5 or using wrappers to get an application (for Windows with NW.js)).

On F, you technically can if talking from a strictly pure eventing standpoint. You can build some sort of mainframe or SDK, like a lot do with gamekits. The only caveats is that you may have to transfer global variables, assets, etc.
Zelda Gamekit (my project)



Example capxs:

Zelda-Style Inventory

Zelda Health

3-saveslot system

[url=https://www.dropbox.com/s/d4396pwak0oh7q6/ZeldaDialogueSystem.capx?dl=0]Zelda-like Dialogue[
B
51
S
24
G
30
Posts: 534
Reputation: 19,620


Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 15 guests