roracle's Forum Posts

  • Almost a week since posting, no replies, very few views. I hope I can bump without any issues.

  • I would love this to be a feature.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Is there a way to trigger "is on floor" when colliding with a particular tile (or various "floor" tiles) and not an entire tile set? I find adding a "floor object" separately is hindering various things, mainly the simplicity of viewing what I'm doing in the editor, and it's difficult to always see what I'm missing to make a "floor" or obstacle.

    If this has been accomplished, an example would be awesome!

  • The animation would always be the same, so that's what you want. And I would use the same pipe graphic, and pick by Unique ID in the code to decide where to go.

    Like LittleStain said, use a function to run the animation process, then separately call for the UID to tell which layout/area to go to. This way, you don't always have to go to another layout (like Mario 3's higher/lower areas for verticle levels).

    Bottom line, it takes quite a bit anyways, but you can shorten the code by giving similar things such as the animation procedure as always the same regardless of which one it is, but each one does have to find a method of knowing where to bring the player.

    Below is how I do it for warping in my Zelda 2 clone. Because there are no animations, but I use the same "event" graphic, I have to pick by UID to determine which graphic is actually being activated.

  • Of course, you would also need a method to tell it what layouts were already used, and to avoid going to those as well. Not hard to do, I'd use an array or something to keep track of that.

  • This would take some coding magic. A few variables to satisfy number variants, and labeling the layouts different numbers.

    I would say layouts named "1" "2" "3" etc, then have an event that assigns a "currentlayout" variable as round(random(0-10)) where "10" would be the highest number labeled layout. Then "Go to layout (by name)" and use the variable "currentlayout" instead of a layout name.

    Going off the top of my head here.

  • You should develop an art style first and foremost. Afterwords, find out how to translate that art form into a game environment.

    Look at this link, or rather, the artwork within it.

    https://en.wikipedia.org/wiki/Paul_C%C3%A9zanne

    That looks NOTHING like a Zelda game, yet it's the precise style they are using in Skyward Sword. You can't rightly tell for a very good reason (unless you have an eye for this). The reason lies in the difference between a book and a movie. Between art and moving art (or a game for example) things have to change to match itself (I hope that makes sense).

    Now when it comes to tiles, you have to comprehend that the style of art you want might not work well as tiles but it CAN be incorporated if you take the time to do so. Artwork for a game is its own project, and not something to take lightly as a side-issue, but a full-fledged "needs attention" part of the process.

    For this very reason, as a game developer and semi-okay artist, I like to take graphics from other people. I use placeholders and once I have a game how I like it to be, THEN I focus on drawing my own art for translation into sprite form.

    I hope this helped!

  • I think people will find well-written code makes good android apps and games in C2. If your code is royally messed up and all on one sheet, there's going to be issues. Learn how to share events between layouts, etc, and you shorten the "slow down" problems. GM isn't as intuitive as C2, and you need to learn GML to use Game Maker.

  • Someone is spamming the forums, lots of Chinese text. Almost 10 pages in the "How do I...?" forums.

  • My best practice is having each layout on it's own event sheet, plus "Include event sheet" for shared events. (Such as your character events all on one sheet, then have a level, and it's assigned sheet is "level sheet")

    From this each layout can be fine tuned via it's own event sheet. So on the layout specific sheet, do this:

    At start of layout

    • Stop all (or "stop" and choose a tag to stop playing)
    • Play song
  • I do this sort of thing in two sub-events:

    Upon pressing F

    • Is mirrored
    • - equation
    • Is not mirrored
    • - reverse equation
  • Looks like a counter obviously. I would do it this way:

    Have two variables, Combo and Timer.

    For the Combo variable, every enemy you kill will increase the Combo variable by 1.

    Then have the other Timer variable that is activated in this way: when an enemy dies, set Timer to 3. (This 3 is an example of how many seconds you have to keep the combo going, it can be however long you wish, but the lower the number the more difficult to keep a combo going.)

    Have another event that says "if Timer is greater than 0, every 1 second, subtract 1 from Timer".

    When/if the timer hits 0, have a routine (or function) that is activated that first takes your Combo variable and uses whatever algorithm you wish for that Combo number to be a multiplyer for points etc. THEN after but in the same actions, have it reset the Combo variable to 0.

  • I would suggest any Jump conditions you have be associated with if the player is or isn't holding "down". Animating and designing mechanics for a platform game can get pretty nutso. I haven't personally done this "jump down" technique, but it couldn't be too hard to do. Try to not over-think it.

  • It seems I MIGHT know what he's talking about: He's referring to jumping down from a jump-through platform. Holding down and pushing "A" on an NES game like Contra for example.

    From the Contra NES wiki page:

    [quote:3nwor09r]"When the jump button is pressed while crouching on a higher platform, the player will drop down to a lower level."

  • There is a fix to get a non-minified compiled game working. I found the instructions, and it requires you ALREADY compile your game before doing this:

    [quote:2x7icq7u]- go to generated/exported not-minified project folder and find c2runtime.js file

    • find function that starts like: C2AudioInstance.prototype.getDuration = function (applyPlaybackRate)
    • change

    let ret = 0;

    to

    var ret = 0;

    Read more here:

    https://www.scirra.com/forum/r213-problem-with-minifing-scripts-and-running-in-chrome_p968840?#p968840