Mikal's Forum Posts

  • Cool minimalist style, how about posting a vid / GIF, so we can see gameplay?

  • Adding a map to navigate begin major scenes / levels. Hotspots on the map allow for actions beyond just travel, like 'info' which lets the main character Spout Lore. Could have a mini game for each time you travel, depending on the location you are going to, if it does not get too tedious (or perhaps just a one-shot mini-game.)

    The map was created using Google Maps, 3D views of a farm in Sebastapol, CA, then used Underpainting 2 Filter from befunky.com. Lots of GIF color munging here.

    Original Map Source

    Processed Map:

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • ...My experience with magitross tho, if you send him a PM, he is SUPER helpful. Very nice guy. Not sure if he is as active now as he used to be. He helped me a ton with all the custom things I wanted to do.

    This is what I was using it for. http://www.playground.yellowbouncyball.com/gametests/zion/ (its pretty rough!)

    Ooo, I like the feel of zion, it definitely reminds me of a Land/Vehicle version of Sunlesss Sea. I posted into support thread about what I was doing with my helper tool, so if someone is interested they can ping me and he has been responsive to other topics we I appreciate.

  • To MiniGame or Not To MiniGame That is The Question

    The main gameplay is Point and Click Adventure / Visual Novel, so most of the play and tension comes from the story and the feelz.

    How about some intermissions though? Since the engine is all set for platform mechanics, I can easily throw in some mini games. The question is do they feel good and what happens to the story if you fail, I don't think we want to restart the story, you generally don't want to move through all the scenes again. It could be a simple block until you get through (then need to balance 'hardness' of minigames, would not want some pure narrative junkie to give up on the story because they cannot pass a minigame.) I am thinking of something from the warren tabletop RPG: give players 'scars' and those will change some future actions / story lines (for example if you are burnt as in the below case, your doe will refuse to be with because of your burnt fur / skin, so you will not get the ending where you raise a big litter together, instead you become lone scout for the warren) Also, I am somewhat inspired by Undertale with bullet hell mini game used for combat, but still telling a narrative tale.

    Here's an example mini game, running through the burning forest avoiding falling burning branches, all place holder art (and the gif version can't handle all the colors, but hopefully it's possible to see what's going on.)

    A good discussion of mini games in RPG and their purpose is found here.

  • Looking awesome! Keep it up! I use the Magistross plugin too! He is amazing- such a useful plugin Good luck on finishing!

    Thanks for the feedback, finishing is definitely hard!

    haddy22 - When you used the Dialogue Template, how did you about creating all the dialogue content? Were you using the Dialogue Utility, *.csv files, or did you have another tool flow?

  • haddy22

    Looks cool, very clean interface and graphics. For some reason the top boxes with text don't feel the same as the rest of the UI ('3d-ish' vs 2d?) Looking forward to checking out the game play. That's a great goal to knock it out in one month, have you done that before?

  • Gigatron

    Can you please update the link to your converter? It's no longer hosted.

  • Over on the Spine forums, badlogic made this comment on the new API that they will not be able to implement a Spine runtime/plugin, any comments?

    Spine Forum Post

    Thanks for the update, I saw the new C3 release as well. Currently, it's not possible to draw textured triangles, a feature required so mesh attachments can be drawn: https://www.construct.net/at/make-games/manuals/addon-sdk/reference/graphics-interfaces/iwebglrenderer
    
    Scirra also requires plugin developers to use their sprite sheets implementation, which makes sense. However, that would require us to be able to create sprite sheets on the fly programmatically from the atlas format Spine exports. I can not find an API to create sprite sheets on the fly. The alternative, and I think that's also what Spriter does, is to have users setup sprite sheets manually. That's a pretty terrible workflow we don't really want to push on our users.
    
    I'm afraid we'll have to wait for future updates.
    [/code:z4hz30cj]
  • Tool time, no pictures.

    The Dialogue template requires making *.json files with details per line about portrait used, location, facing, etc. I want to make it simpler to write dialogues.

    I want to write all my dialogues in a simple text editor and run a 'make' to create a *.json file. I find it more productive to be editing text directly rather than hacking up a *.csv file or using the Construct utility template and having to run Construct.

    So I created a simple c# parser to parse a text file and create the *.json file. I got a version working, but looking for feedback if anyone is interested in it or had approached this in other ways.

    Some dialogue lines will still be complex, e.g. choice and fork, but as I looked at those, I did not want to re-invent the wheel too much to define new ways that those would work in the text file. As I create more dialogues with those constructs, I'll see if that changes.

    Here's my input text file:

    // If you don't use something like mcpp, ignore this.
    
    // Name of overall dialogue dictionary (currently not used in dialogue system)
    [Header]
    WarrenBeforeFire
    
    // Default Character Information
    // [CharacterName]:PortraitPosition[Left|Right]:[PortraitName]:[PortraitX int]:[PortraitY int]:[Mirrored|NotMirrored]:[ShowFrame|HideWindowFrame]
    
    [Characters]
    Thistle:Left:Portrait2:0:0:NotMirrored:ShowFrame
    Nettle:Right:Portrait1:0:0:NotMirrored:ShowFrame
    NettleSad:Right:Portrait3:0:0:NotMirrored:ShowFrame
    
    // DialogueBlock
    [Dialogue]	
    // Dialogue Header / Key
    DialogueExample2
    // Actual Dialogue
    // CharacterName: "blah blah blah"
    Thistle: "{enablefog:192,192,192}Thistle you look worried.{pause} Is that smoke I smell in the warren?"
    Nettle: "{showcutscene:GreenForestPath} Nettle, a fire! It's close we must escape to the swamp. We'll be safe there.{pause}{removecutscene}"
    Thistle: "{showcutscene:ForestFire} Ah! The fire comes, now I hear the roar is it too late?{wait:500}{removecutscene}"
    
    [Dialogue]
    DialogueExample4
    Nettle: "The smoke is choking us out!"
    Thistle: "Let's run for it!"
    Nettle: "No, I am ready to do that, wait for my doe!"
    Thistle: "We don't have time, we must go now."
    NettleSad: ".{pause}.{pause}.{pause} Sigh, all right, I hope she has already left!"
    // End section required (all lines ignored in this section)
    [End]
    [/code:3abdt26u]
    
    This produces a json file:
    
    [code:3abdt26u]
    {
            "c2dictionary": true,
            "data": {
    "DialogueExample2": "{\"c2array\":true,\"size\":[3,7,1],\"data\":[[[ \"{enablefog:192,192,192}Thistle you look worried.{pause} Is that smoke I smell in the warren?\"],[1],[\"Portrait2\"],[0],[0],[0],[0]], [[ \"{showcutscene:GreenForestPath} Nettle, a fire! It's close we must escape to the swamp. We'll be safe there.{pause}{removecutscene}\"],[2],[\"Portrait1\"],[0],[0],[0],[0]], [[ \"{showcutscene:ForestFire} Ah! The fire comes, now I hear the roar is it too late?{wait:500}{removecutscene}\"],[1],[\"Portrait2\"],[0],[0],[0],[0]]]}"
    , "DialogueExample4": "{\"c2array\":true,\"size\":[5,7,1],\"data\":[[[ \"The smoke is choking us out!\"],[2],[\"Portrait1\"],[0],[0],[0],[0]], [[ \"Let's run for it!\"],[1],[\"Portrait2\"],[0],[0],[0],[0]], [[ \"No, I am ready to do that, wait for my doe!\"],[2],[\"Portrait1\"],[0],[0],[0],[0]], [[ \"We don't have time, we must go now.\"],[1],[\"Portrait2\"],[0],[0],[0],[0]], [[ \".{pause}.{pause}.{pause} Sigh, all right, I hope she has already left!\"],[2],[\"Portrait3\"],[0],[0],[0],[0]]]}"
            }
    }
    [/code:3abdt26u]
    
    Which I can import into Construct and use.
    
    (I also use Makefiles, preprocessor, etc. so I can do file includes defines, if, endif, etc. in my original sourcefiles before I process the file.)
  • BUTTSLUGS.

    you're a bullet and you have to butt stomp enemies for fuel and shooting yourself into hordes. + lots of sliding on slopes.

    currently jamming this game out for GAShmupEmUp Jam

    Cool bullet animations, I like the idea about fueling up, even to the point of getting a special attack? What happens if you are really low on fuel, do things become not fun?

  • I want to write all my dialogues in a simple text editor and run a 'make' to create a *.json file. I find it more productive to be editing text directly rather than hacking up a *.csv file or using the Construct utility template and having to run Construct.

    So I created a simple c# parser to parse a text file and create the *.json file. I got a version working, but looking for feedback if anyone is interested in it or had approached this in other ways.

    Some dialogue lines will still be complex, e.g. choice and fork, but as I looked at those, I did not want to re-invent the wheel too much to define new ways that those would work in the text file. As I create more dialogues with those constructs, I'll see if that changes.

    Here's my input text file:

    // Name of overall dialogue dictionary (currently not used in dialogue system)
    [Header]
    WarrenBeforeFire
    
    // Default Character Information
    // [CharacterName]:PortraitPosition[Left|Right]:[PortraitName]:[PortraitX int]:[PortraitY int]:[Mirrored|NotMirrored]:[ShowFrame|HideWindowFrame]
    [Characters]
    Thistle:Left:Portrait2:0:0:NotMirrored:ShowFrame
    Nettle:Right:Portrait1:0:0:NotMirrored:ShowFrame
    NettleSad:Right:Portrait3:0:0:NotMirrored:ShowFrame
    
    // DialogueBlock
    [Dialogue]	
    // Dialogue Header / Key
    DialogueExample2
    // Actual Dialogue
    // CharacterName: "blah blah blah"
    Thistle: "{enablefog:192,192,192}Thistle you look worried.{pause} Is that smoke I smell in the warren?"
    Nettle: "{showcutscene:GreenForestPath} Nettle, a fire! It's close we must escape to the swamp. We'll be safe there.{pause}{removecutscene}"
    Thistle: "{showcutscene:ForestFire} Ah! The fire comes, now I hear the roar is it too late?{wait:500}{removecutscene}"
    
    [Dialogue]
    DialogueExample4
    Nettle: "The smoke is choking us out!"
    Thistle: "Let's run for it!"
    Nettle: "No, I am ready to do that, wait for my doe!"
    Thistle: "We don't have time, we must go now."
    NettleSad: ".{pause}.{pause}.{pause} Sigh, all right, I hope she has already left!"
    // End section required (all lines ignored in this section)
    [End]
    [/code:3eweohlp]
    
    This produces a json file:
    
    [code:3eweohlp]
    {
            "c2dictionary": true,
            "data": {
    "DialogueExample2": "{\"c2array\":true,\"size\":[3,7,1],\"data\":[[[ \"{enablefog:192,192,192}Thistle you look worried.{pause} Is that smoke I smell in the warren?\"],[1],[\"Portrait2\"],[0],[0],[0],[0]], [[ \"{showcutscene:GreenForestPath} Nettle, a fire! It's close we must escape to the swamp. We'll be safe there.{pause}{removecutscene}\"],[2],[\"Portrait1\"],[0],[0],[0],[0]], [[ \"{showcutscene:ForestFire} Ah! The fire comes, now I hear the roar is it too late?{wait:500}{removecutscene}\"],[1],[\"Portrait2\"],[0],[0],[0],[0]]]}"
    , "DialogueExample4": "{\"c2array\":true,\"size\":[5,7,1],\"data\":[[[ \"The smoke is choking us out!\"],[2],[\"Portrait1\"],[0],[0],[0],[0]], [[ \"Let's run for it!\"],[1],[\"Portrait2\"],[0],[0],[0],[0]], [[ \"No, I am ready to do that, wait for my doe!\"],[2],[\"Portrait1\"],[0],[0],[0],[0]], [[ \"We don't have time, we must go now.\"],[1],[\"Portrait2\"],[0],[0],[0],[0]], [[ \".{pause}.{pause}.{pause} Sigh, all right, I hope she has already left!\"],[2],[\"Portrait3\"],[0],[0],[0],[0]]]}"
            }
    }
    [/code:3eweohlp]
    
    Which I can then import into Construct and use.
    
    (I also use a Makefile and cpp (preprocessor) to allow me to do file includes and use defines with my text files, but that's for another tool flow discussion...)
  • Casimir

    Sorry, I missed your comment, I updated my links above with new images and my code for the solution for changing light position and allowing for rotation of sprites, rotation of sprites and normal maps is not typically supported with this effect. Let me know if you have any questions.

    For your effect it looks like you are trying to reduce the resolution of the effect. Which does not seem too hard (but I am not an effect hacker, so need to look elsewhere for support.)

  • Example of dialogue system in action:

    I used the Dialogue System from Magistross and added a couple of new commands: showcutscene / removecutscene, also showfog / removefog (with an RGB for the fog color to add atmosphere and focus on dialogue vs background) which shows a sprite above the dialogue for more flavor (could become animated as TD does sometimes, if I can get some animated scenes or use spine to animate.) I also integrated the Epic Platformer from 'Show Scene' Zone command to pull in focus to the context of the dialogue. Both systems are nice and extensible.

    I used Spine to do a very simple / primitive animation of the 2D art of the first rabbit portrait, make a little head turn back and forth using FFD / Mesh with an edge added down the middle of the face. I had to integrate it as sprite sheets for now, until a Spine plugin is available for C3. I will add similar the other portraits (including hopefully some eye blinks, which also always add a bit of life to a headshot.)

    The cutscene art is from stock photos and pushed through the befunky.com underpainting 2 filter.

  • Lapine Tales is a point and click / platformer / visual novel game (hopefully taking the better parts of each element or paring down to which is best for gameplay) It is inspired by the the warren rpg tabletop role-playing game (which was in turn inspired by the book Watership Down, Fifteen Rabbits and Peter Rabbit.)

    I just have begun working on the initial game engine, but now have something to show.

    Inspirations:

    * Bunnies live, fight, die, love

    * The Warren RPG

    • "The Warren is a tabletop role-playing game about intelligent rabbits trying to make the best of a world filled with hazards, predators and, worst of all, other rabbits. It is a game about survival and community." - From The Warren RPG web page

    * Tokyo Dark (TD)Point and Click (P&C) adventure, great story, art (including full video animations), shows how a constrained P&C engine can tell a great and immersive story

    Goals:

    * Implement a TD style UI in my own C3 engine, with a short story, add platformer elements if interesting.

    * Create simple tools for level / dialogue / game story creation to speed content creation.

    Initial Design: I took a stab at this before, based on Pixel Art and making it a Narrative Platformer, but that was a fail: too much effort to marry genre in one form (NPC AI, Platformer death mechanic not good for adventure), overall not enough narrative possibilities. So this is my second iteration, focusing more on narrative.

    "Use Your Constraints" (From Slime Rancher Post Mortem)

    * Limited Art skills

    - Use befunky.com Artsy post processing on all below art sources to unify style (Underpainting 2)

    - Free/Low Cost Pixel Art Assets

    - Free/Low Cost Drawn Art

    - Free Stock photos

    - Use level design for 'background art'

    - Google Maps for Farm Map with befunky and 3D view tilted to perspective I liked

    * Point and Click without jumping

    - Simple flat levels with lots of decoration (eventually! Very plain now.)

    * Limited Animation skills

    - Leverage existing pixel or other sprite strips with Artsy post processing to unify style

    - Use art from LadyFizi WD Fan Art who graciously allowed me use her art in my game (LadyFizi Deviantart)

    - Use Spine to animate 'still pictures' from above (I am a Spine novice, but see good potential here)

    - Still hoping for Spine / Spriter integration into C3, right now using sprite sheet which is more of a memory hog and the animations are not as smooth.

    * Story/Subject limitations

    - Rabbit character limited expressions

    - Drawings in curscene can add more. but sprite on screen are too simple, hard to differentiate?

    - Add different animals (akin to different human personalities)

    For the first above example, I used the Epic Platformertemplate and added: point and click movement and point and click hot spots. When hovering over a hot spot, the 'actions' for the hotspot appear, each hotspot has a 'distance visible' so they appear or disappear as the player moves towards or away them. Most of the actions of the hotsport trigger dialogues of one form or another and each instance of the hotspot has variables for the actions and tags for the parameter for each action. Let me know what you think.

  • Your art book is a real inspiration, I don't have talents in that area, so I really appreciate when folks show off their process and sketches. It would be a good add to the release of the game (or 'deluxe release'), a PDF of your sketchbook (did you do that on the first version?)