jojoe's Forum Posts

  • > Sorry again, the Function Plugin :p

    >

    > My English.... I just cant!

    >

    I thought you meant the function plugin, but I don't understand why it's not possible to use "complex expressions" in it..

    I do it all the time..

    Make a "How do I : Make a function with complex expressions", and I will make you an example when I get home from work. I will also show you how to use an array with a dictionary so you wont have to cast , and use tokens like you where suggesting to this new user.

    Maybe Ashley or someone else can answer before i am done with my work.

    Really surprises me how many people on the forums do not know about array. They are the backbone to programming. Most people learn about them the same time they learn about Str, Int, and Float.

    Magistross you should learn about Arrays too, they would really help your plugins I bet.

  • > You also can NOT do complex expressions in a function like grabbing tokens, you need to have global/instance variables set for the function to be able to access them.

    >

    Could you explain this statement?

    Why wouldn't you be able to do this?

    Maybe you mean something else with "function" and/or "complex expressions", but I haven't run into this limitation..

    Sorry again, the Function Plugin :p

    My English.... I just cant!

  • > In C2 the Array variable is an Object,. You cant set a global array, nor can you make an array instance variable like in Scripting languages.

    >

    Correct me if I'm wrong..

    Isn't an array set to global on creation?

    Wouldn't adding an array to a container work as using it as an instance variable?

    Maybe you mean something different, that's why I'm asking..

    Ah sorry about that,

    I meant the way you create them. In conventional programming you define the global variables at the top of the script (usually, they dont actually have to be here). This is where most people would assume you make an array.

    I mentioned this because they might think C2 does not support them. When they are actually an object that you add to the game board, rather than to the list of Global variables. People who are used to normal programming might overlook this when they right click on the event sheet to make one is why I mentioned it.

    I am not very good at English,

  • The built in feature is called an Array Object. It lets you do a list on a 1, 2, or 3 dimensional matrix

    Use an array for your list. This will let you sort, pop, delete and insert your list entries.

    https://www.scirra.com/tutorials/307/ar ... -beginners

    It will also let you load and save from a .json string!

    In C2 the Array variable is an Object,. You cant set a global array From the event sheet, thanks littlestain!. Nor can you make an array instance variable like in Scripting languages. From the Array you can load the list into a Dictionary for additional functionality.

    You can insert an arrays .JSON string, into another arrays index. This makes it possible to save all of your games arrays into a single array. This is a simple method of making a custom save game file. Makes it really easy to load too! Just one string!

    I recommend the Array because it is easier to understand for people who have used real scripting languages like C#, Javascript, or Python. You can also find usable code theory on StackOverflow.com. Just substitute the Array object for the Array Variable that they are describing.

    You could also do it manually with a Text object, Text instance variable, or a Dictionary object. This will require some Ninja code skills, and the knowledge of the get token at, and Token count, and making your own loop to cycle through the text. The array object has all of this built in! Not to mention the Sorting, popping, inserting and deleting.

    Here is the code difference to get the word "Text":

    tokenat("The,Text,From,Your,Custom,Built,String,Here"), 1, ",")[/code:yxzfx0ab]
    
    Or just grab the second value of an array (0 base):
    
    [code:yxzfx0ab]Array.At(1)[/code:yxzfx0ab]
    
    Trust me, the second one is MUCH easier to debug when you are scanning over hundreds of events.
    
    You will not have to "Cast" your values into Floats, integer or strings either. You just grab the value and run!
    Here is an example of grabbing some screen locations of a game tile from a string, the INT() is me casting them from  a string into an Integer:
    
    [code:yxzfx0ab]X:  int(tokenat(SliderController.Slider_Label_Offset, 0, ","))[/code:yxzfx0ab]
    [code:yxzfx0ab]Y:  int(tokenat(SliderController.Slider_Label_Offset, 1, ","))[/code:yxzfx0ab]
    
    Here is what the array would look like:
    
    [code:yxzfx0ab]X:  Array.At(Array.CurX)[/code:yxzfx0ab]
    [code:yxzfx0ab]X:  Array.At(Array.CurY)[/code:yxzfx0ab]
    
    Anyway, the amount of text in your expression, and casting variable back and fourth takes up valuable CPU resources. You also can NOT do complex expressions in a function like grabbing tokens, you need to have global/instance variables set for the function to be able to access them.
  • Wow! This is really great! thanks so much!

  • Made my C2 not even load. have to uninstall manually.

    ---------------------------
    Construct 2 Check failure
    ---------------------------
    Check failure!  This is probably a bug:
    
    ACE table: Expression ID duplicated in ACE table
    
    Condition: exp_ids.find(id) == exp_ids.end()
    File: c:\c2\source\exporters\html5\..\..\common\ERAHelpers.h
    Line: 269
    Function: void __cdecl era::ACETable::AddExpression(int,int,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,const class std::basic_string<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > &,void (__cdecl *)(const class era::StaticResult **,int,class era::StaticEvaluation *))
    Build: release 214 (64-bit) checked
    Component: HTML5 exporter
    (Last Win32 error: 0)
    
    You are using a 'checked' release of Construct 2, intended for testing, which causes certain errors to be reported this way.  Hit Ctrl+C to copy this messagebox - it's useful information for the developers, so please include it with any bug reports!  Click 'Abort' to quit (unsaved data will be lost!),'Retry' to turn off messages for this session and continue, or 'Ignore' to continue normally.
    ---------------------------
    Abort   Retry   Ignore   
    ---------------------------
    [/code:dgruj2zo]
  • Magistross

    Great plugin! Thanks for doing this for us

  • Great flash utility to make sounds for your games.

    http://sfbgames.com/chiptone/ChipTone.swf?s=null

    Much better than BFXR as far as the user controls.

  • C2 has been my choice since its release. I use Unity too, but that is only because of Playmaker, and Shader forge. For 2D games there is no better faster way to learn. Ashley's tutorials are really great to get you started.

    Game maker has its neat points too, but it is a bit more complicated to make anything useful with it.

    UNity has the ability to make 2D HTML 5 games too, but the import and 2D tools really feel like they where an afterthought. Please excuse my terminology, but the way Unity handles textures is a real "Pain in the ass" compared to C2's drag and drop.

    The way C2 will not allow you to make mistakes on syntax is my favorite part. With Unity I have to use C# for the core elements, or buy pre-rolled middle-ware. C2 has the sprites as Icons on the events sheet. This makes Debugging a breeze for me. I can quickly scroll through the entire game, and find exactly what I am looking for without reading a single word. Unity, I am stuck in Mono's C# development hell thanks to my Dyslexia, and poor typing skills..

    I think the best part about C2 is the way we can make all of the assets right inside the game engine editor. I love having an idea, and being able to scribble out some quick proxy graphics.The only other game engine I know of that does this is the Blender Game engine.

    With Unity i am waiting till i make the $50,000 to buy the commercial license. C2 I am buying one as soon as possible. I will also be one of the first C3 customers too.

  • jammendo is great for Music that is (CC) license. There is a bunch of public domain stuff there too iirc. jammendo is also quite cool to get free listening music.

    Pro tip: Search for Instrumental, Theme music, or Game music to ensure you dont get crap with "artists" singing. (There is some REAL crap too, so fair warning about the singing part.)

    https://www.jamendo.com/en

    For sounds i recommend getting BFXR:

    http://www.bfxr.net/

    Pretty fun for making retro game sounds.

    You can tweak them further with this:

    http://audacityteam.org/

    Just make sure that you export MONO not stereo tracks, there is an option to render stereo into a single track, look in the menu options after you have a sound loaded.

    Also, if the game engine supports "Echo" dont make tracks with echos.... You will make a 1 or 2 second sound into a 10-60 second sound which will be a huge file. Just use the initial sound and let the game engine render the echos.

    Audacity is AWESOME for sounds that you cant import into C2!! You can make the OGG and AAC files manually if the C2 importer fails. (Which is usually a user failure to remove the stereo tracks, or export at the right frequency.)

    Another common mistake is using LAME to export .MP3's.... MP3 is a propitiatory format. If you use it in a commercial game you will owe the license holder lots and lots of money. (I dont think C2 supports MP3 anyway)

  • Looks Great Fhizban! I like how spaced out things are, and the nice big buttons. I bet your game will be a hit.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Legally i think you shouldn't have a problem with it, however some people will still probably see similarities.

    Which laws? Which country? Could you please be more verbose? If you are giving out legal advice, you should show your sources of information.I know laws in the Nordic countries are much different than the ones in America. That is why "The Pirate Bay" has lasted as long as it has. Please copy and paste the the law you are citing. (or link)

    In the USA it really does not matter what the law says, the one who wins is the guy who payed the most for his lawyer 9/10.

  • Hey! That looks really great!

    Here are a couple of others:

    https://www.mixamo.com/fuse

    Make human:

    http://www.makehuman.org/

    You can use this service to auto-rig them.

    https://www.mixamo.com/

    You get the first 10 for free, then you have to make a new account to get more.(Or pay to extend the account)

    Unity has an auto-rig feature But you would have to buy a FBX or collada exporter to get them into Blender or some other 3D app.

    Google "Free BVH" to find thousands of free motion captured animations, you can import into Blender.

    It really is great to learn Blender. It is hard for everyone at first. If you stick with it though it really can pay off. It took me about 1 week before I could use Blender without a hotkey cheat-sheet.

    If you are new to 3D in general, a good place to start is Wings 3D:

    http://www.wings3d.com/

    Choose a selection method (Face,Edge,Vertex), then right-click to see all of you possibilities! A few minutes you will understand Scale, rotate, extrude, translate (move), etc.

  • You're not copying a style you're copying an image.

    Good artists copy, great artists steal. --Pablo Picasso

  • Because blueprints are slow. If I remember correctly they are 10 times slower than normal C+

    Like I said you can do stuff with blueprints. You can combine blueprints with C+. But doing stuff like inventory, random level generation or any other complex task should be done in C+. And you simply can't make a full game without touching C+ - I'm not talking about flapy bird or similar kind of games.

    That makes sense. It is still a great solution for newbies and for hobbyists vs unity+Playmaker+middleware-$$$-$$$-$$$$-$$$.

    With Unreal Tournament 2003 and 2004 Editor I learned how to make shaders , Now I use the same knowledge to build them in Unity with shader forge. I use a lot of the UT 2004 concepts when I am making my AI and when designing levels. I never really liked the editor though.