programaths's Recent Forum Activity

  • It appear to be a very, very quick answer...too quick !

    What about this NPC (Non Playable Character) ?

    <img src="http://www.programaths.be/construct/state/npc.png">

    He has 7 states, so 7 groups.

    With boolean, the first few interactions have to be checked with :

    <span class="syntaxdefault">
    if�</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">not</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$shield</span><span class="syntaxkeyword">)</span><span class="syntaxdefault">�and�not</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$sword</span><span class="syntaxkeyword">))</span><span class="syntaxdefault">�
    </span><span class="syntaxkeyword">{
    </span><span class="syntaxdefault">��say</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"you�should�grab�..."</span><span class="syntaxkeyword">);
    }
    else
    {
    </span><span class="syntaxdefault">�if</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$shield</span><span class="syntaxkeyword">)
    </span><span class="syntaxdefault">�</span><span class="syntaxkeyword">{
    </span><span class="syntaxdefault">��say</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"grabb�sword"</span><span class="syntaxkeyword">);
    </span><span class="syntaxdefault">�</span><span class="syntaxkeyword">}
    </span><span class="syntaxdefault">�else
    �</span><span class="syntaxkeyword">{
    </span><span class="syntaxdefault">��if</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$sword</span><span class="syntaxkeyword">)
    </span><span class="syntaxdefault">��</span><span class="syntaxkeyword">{
    </span><span class="syntaxdefault">����say</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"grabb�shield"</span><span class="syntaxkeyword">);
    </span><span class="syntaxdefault">��</span><span class="syntaxkeyword">}
    </span><span class="syntaxdefault">��else
    ��</span><span class="syntaxkeyword">{
    </span><span class="syntaxdefault">���say</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Do�you�want�to�..."</span><span class="syntaxkeyword">);
    </span><span class="syntaxdefault">���if�</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$wantlearn</span><span class="syntaxkeyword">)
    </span><span class="syntaxdefault">���</span><span class="syntaxkeyword">{
    </span><span class="syntaxdefault">����</span><span class="syntaxkeyword">....
    </span><span class="syntaxdefault">���</span><span class="syntaxkeyword">}
    </span><span class="syntaxdefault">��</span><span class="syntaxkeyword">}
    </span><span class="syntaxdefault">�</span><span class="syntaxkeyword">}
    }
    </span><span class="syntaxdefault">�</span>[/code:dwc5r2aw]
    
    Etc...A big pain in the ass, unless you use a "state" variable that you have to keep consistent between all events.
    
    And this one is a trivial NPC because he doesn't offer quests that depends on others quests 
    Etc.
  • Event groups are worth to implement !

    Here is why !

    When they are used accurately, they give you a very simple way to handle complex scenarii and state based actions, the most well know being in game menus !

    In the page above, I show how use groups to handle motion and handle user typed commands ! (see the link)

  • What would be nice would be to have type hierarchy.

    Like in OOP.

    And on top of that, some kind of constraints based on families. (to simulate tagging interfaces or multiple inheritance)

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I did found this : http://www.renderengine.com/

    and this is very, very close to the Construct philosophy !

    So, why not rely on this library ?

    A web version of Construct could be fine too, by "a web version of Construct", I mean, the complete IDE as a web page. (Using HTML5 technologies)

    It's feasible and would be cross platform by definition and ready for the next revolution.

    Google Chrome OS is taking the first step toward web applications.

    When you see technologies like WebGL supported in Chrome (eh, of course, these guys know what to do !), you can clearly see the potential (should I call that like that ?).

    But, the whole point of this was to say :

    Hey guys, you're doing the same job as others

  • When the use check "Enable developper mode" in dialog 1:

    <img src="http://www.programaths.be/construct/guimockdevmode1.png">

    he is shown the dialog 2:

    <img src="http://www.programaths.be/construct/guimockdevmode2.png">

    The message is clear and does not give any clue about what the option does, instead it says only that you should enable that option if you know why ! It put the emphases on the bad aspects of it and not the good ones.

    It's made to be sure that you don't enable it unless you really want to try it.

    Each time Construct is launched, a nag screen is shown showing some options :

    <img src="http://www.programaths.be/construct/usingdevmode.png">

    It forces the "developper" to click on the third option.

    Doing that, we can be sure that users who do not use this feature turn it off after a while. Unlesse they like nag screens !

    The key in the registry can contains 3 values :

    DISABLED (0)

    DISABLED_ONCE (1)

    ENABLED (2)

programaths's avatar

programaths

Member since 15 Feb, 2011

Twitter
programaths has 1 followers

Trophy Case

  • 13-Year Club
  • Coach One of your tutorials has over 1,000 readers
  • RTFM Read the fabulous manual

Progress

15/44
How to earn trophies