MysticTrunks's Forum Posts

  • take a look at the second post here.

    http://www.rpgrevolution.com/forums/ind ... ntry447958

    Though, many if not anything can be done without python. Though, I don't think Mode7 can yet though.

  • > Anyway, was I right in executing an array variable? I'm really just trying to learn switch over to python.

    >

    You could also create your own class.

    class Actor:
        """Definition of the player characters"""
        
        def __init__(self):
            self.name = ""
            self.level = 0
            self.hp = 0
            self.hpmax = 0
            self.sp = 0
            self.spmax = 0
            self.strength = 0
            self.power = 0
            self.defence = 0
            self.speed = 0
            self.xp = 0
            self.slot = 0
    
    [/code:3gmi2e16]
    You create an instance of the class by referencing it:
    [code:3gmi2e16]my_actor = Actor()[/code:3gmi2e16]
    
    If all player characters start with a certain value, you would of course replace the appropiate values. Also, __init__ is not really a constructor, but works nearly the same way, because this method is automatically called as soon as the class is created. If you'd want to create a new instance of the class with certain values, you'd do this:
    [code:3gmi2e16]class Actor:
        """Definition of the player characters"""
        
        def __init__(self, name="", level=0):
            self.name = name
            self.level = level[/code:3gmi2e16]
    Now you could create an instance either way:
    [code:3gmi2e16]my_actor = Actor()
    dewey = Actor("Dewey", 2)[/code:3gmi2e16]
    You can still use a list to manage them:
    [code:3gmi2e16]actors = []
    actors.append(Actor("Dewey", 2))
    actors.append(Actor())
    actors[1].name = "Wanda"[/code:3gmi2e16]
    And the levelup code could be realized as a method of the Actor class:
    [code:3gmi2e16]class Actor:
        """Definition of the player characters"""
        
        def __init__(self, name="", level=0):
            self.name = name
            self.level = level
            self.xp = 0
            
        def try_lvlup(self, exp):
            if self.xp >= exp:
                self.level += 1
    [/code:3gmi2e16]
    Again, referenced and stored in a list, you'd call:
    [code:3gmi2e16]actors[1].try_lvlup(mrcool_exp)[/code:3gmi2e16]
    
    But I guess it's just a matter of taste. I prefer the class-way for easier code maintaining (adressing actor[0].strength is more readable than actor[0, 5])
    

    That's great dude!

    • Tile Mapping

    While the layout editor does just about everything, some of use are use to tile editors and like to create tilesets for our games. If anything, just allow us to snap to a grid or something for tile based mapping.

    • Message Boxes

    In a lot of games there are message boxes, very common amongst RPGs. Some have portraits, some have face icons. And each message box generally works the same. You have letter by letter dialog, and if somethings important you would color that word or phrase.

    • Python 3

    Have no idea if the newest version of python will work with Construct, but it'd be a great feature to update.

    • RPG Events

    While anything RPG Related can be done in Construct, built in events will help as well. Such as weather effects, day/night effects, wind effects(also should have a strong setting so the player walks slower if the wind is at a strong setting). Emotion icons, these are basically just your love, "!", kind of icons. Basically just expression icons that pop up over the player during or after a message sequence.

    • Menu editor

    While this really should be left to phython or constructs human events system, a menu editor should be added as it can save a ton of time between play testing over and over. Also, it'll create a python file in the games folder(wherever python files are saved) with the menus code.

    • Hud editor

    This really explains itself, basically a hud editor where you can design the hud for your game right in front of you. This also can be done within python very easily but some things are better off with an editor.

    • Save/Load editors

    This belongs with the menu editor idea, where you can design your save/load menus and make them so they're not so..ameturish..

    But minus these, construct is a very all around awesome 2D game Engine that can really do just about everything. This is 1 engine where you can believe what the developers tell you.

  • you could have the same effect using some :

    -custom sprites

    -timeline behavior

    -write text event

    Might want to elaborate a bit more, some of us are advanced Game Maker users but are well novice Construct users.

  • I think you can set runtime windows to 320X240 if you wanted to.

    But I would love to see Construct on Mac OS X!

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Oh I see. I'm just used to "//" for comments.

    I think ruby also uses "#" for comments.

  • Hehe, my bad.

    Anyway, was I right in executing an array variable? I'm really just trying to learn switch over to python.

  • ::RPG Tutorial - Actors, and experience points

    In a rpg your character is going to level up and to keep track you need experience points. I don't have much knowledge of Construct but I have knowledge for programming/variable work.

    If you're using python you need to setup an array, if your using just the event code listen

    Python:

    actor = [];
    actor[0,0] = "Mr.Cool"
    actor[0,1] = 1 // Level
    actor[0,2] = 70; // HP
    actor[0,3] = 70 // HP Max
    actor[0,4] = 0 // SP
    actor[0,5] = 20 // SP Max
    actor[0,6] = 5; // Strength
    actor[0,7] = 9; // Power
    actor[0,8] = 5; // Defence
    actor[0,9] = 4; // Speed
    actor[0,10] = 0; // XP
    actor[0,11] = 0; // Slot number
    [/code:1atxcsia]
    [code:1atxcsia]
    // Level/exp stuff
    mrcool_exp = [];
    mrcool_exp[0] = 50;
    mrcool_exp[1] = 134;
    // just keep doing the same until you reach Level 99/100.
    
    level up code
    if actor[0,10] >= mrcool_exp
       actor[0,10] +=1;
       // this is where you can display a level up message, and increase the stats. 
    [/code:1atxcsia]
    
    Please note I come from a C++, GML, C# background, if my coding is somewhat wrong just correct me please.
    
    I'll update this tutorial frequently.
  • What really brought me to Construct awhile back was it's programming ability, I no longer see it as an available feature. Why is this? It'd be easier to use programming with an engine like construct than it would be to use the language on it's own..

    I am capable of writing an rpg in python but wanted to do it in construct..

  • Now if only I can get python working this would be great... but the new changes seem nice.

  • Coolies.

    so I did it like this.

    var Durran // player

    array[Durran,name] = "Duran";

    array[Durran,slot]' = ''; // only when added.

    how would the adding/removing of the player work?

    "I'm use to programming, kinda wish python was ready"

  • I didn't know arrays were possible to use without python scripting? What behavior/button is it?

    In Game Maker I did it like this.

    globalvar actor, name, lv, hp, maxhp, sp, maxsp, str, pow, def, spd, xp;
    globalvar char1;
    
    actor[char1,name] = "Character 1s Name"; 
    [/code:otpwuf2s]
    
    I always was never able to create a party add/remove system, but in python it could be like this.
    
    [code:otpwuf2s]
    class Party:
        pass
    
    Duran = Party() # Create a Party Member  also can be done by arrays
    Duran.name = "Duran";
    Duran.hp = 75;
    # More stat stuff here
    Duran.slot = ''; // slots are only added when a party member is called. 
    
    define add_actor(actor)
      i = actor.length # Don't know if python has a length thingy like javascript
     if actor !=3
       actor[i] = new object();
       actor[i].Name = Actor[actor].name;
        Actor[actor].slot +=actor.length;
    [/code:otpwuf2s]
  • Construct may be free, but it's also already better than agm, since agm is limited and can't do much and isn't cross platform(genre)

    I think Construct is fine being free, free isn't bad. But I would love to have python working though, also you can't compare agm to construct, period.

  • I'm making an RPG.<img src="http://www.refractivegames.com/battle_files/screen3.png">

    Here's the teaser: http://vimeo.com/3607637

    Wow, that's actually pretty cool. Not flashy like the other screens, but because you have a functional party system.

    May I ask if you have it so it can add, and remove party members?

    Good Luck on your project!

  • I'm really curious how Construct would handle parties.

    For example.

    variables: name, hp, maxhp, sp, maxsp, xp, slot; // note I'm just using programming for examples, not construct or actual python coding.

    Now, when a game starts you see a few splash screens, then your title, you go through an introduction blah blah blah, etc. By the time it's all over, you should have 1 player to walk around with.

    I'm just wondering how you would setup a database for players and able to remove them, then add them at any point in your game, with constructs default coding.