oosyrag's Forum Posts

  • I can agree that the ability to reposition the vanishing point would be quite a nice property to have, that doesn't seem like it would be difficult to implement afaik. If not a user designated vanishing point by coordinate, which could cause some issues if not careful, perhaps one where you can chose viewport corner/edge/center would be simpler and safer to use.

  • Thanks for the reply, seems simple enough. I see where to find the array interface in the scripting documentation now too, I guess I just wasn't familiar enough with that section of the manual.

    I also tried putting it together using the JSON object with -> JSON: Push back "{x:"&array.at(loopindex,0)&",y:"array.at(loopindex,1)&"}", but that resulted in each element being enclosed in double quotes, which I guess indicates a string rather than two separate json objects in that array cell. I could strip them out in the resulting json output with a replace, but that felt pretty clunky and wrong.

    About the BBcode property... ugh. Thanks. Figured the data was fine but it was driving me nuts why it wouldn't display.

  • If you don't understand, then you should start from the beginning of the tutorial.

    construct.net/en/tutorials/beginners-guide-construct-1

  • > I think I read somewhere that you can't turn off font smoothing for text objects. Is there a reason you can't use the spritefont?

    I could use it. However I have the intention of translating the game to other languages in the future (russian, mandarin etc) and it would make things more complicated.

    My last shot will be applying some sharpness to the text object and see the results, if it doesn't work I guess I'll use sprite fonts.

    Just wanted to chime in as a Chinese user and say the lack of spritefonts is pretty much a given for a non-alphabet based language, and non anti-aliased Chinese characters to be blunt are quite ugly. The only real reason to use them would be if you make your text really itty bitty, which is probably a bad idea to begin with.

    From a usability standpoint, you're probably overthinking it. If you don't put aliased and anti-aliased text directly next to each other for an end user to see the difference, the average person won't notice at all, unless it makes it hard to read (in which case you could simply make it larger). Brains are wired to smooth things over by default. Even then, either way it is decidedly not going to change the impression of how fun your game is to play.

    Also some general advice for international support, whenever possible you should focus on avoiding text completely by designing around symbols that can be universally understood to begin with. Bad translations/localizations are the source of much derision and amusement among my friends in the games we play at least. Of course this won't work if your game relies heavily on text, but just leaving this here for discussion anyway.

  • To make a sprite move in a random direction, give it the bullet behavior and set the bullet angle of motion to random(360).

    If you're building an ai for a battle royale... You're going to need a more detailed plan of how you want your ai to behave and the rules and constraints they need to follow.

  • The first thing that comes to mind is to use an array. For each object that has that timer running, push timer.duration-timer.currenttime, and the object's uid into an array. Sort the array to get his of the object with the lowest duration remaining.

    If they all had the same duration to begin with you can just push and remove the object uid directly into an array, first in first out.

    Or are they all on the same object? If you elaborated on your set up and how you are using the timers there may be better approaches. For finer control over timers you would normally use different tags.

    EDIT: Below is a better idea.

  • To associate an instance of one object with a particular insurance of another object, you should either use a container if they are always 1:1, or store the UID of the "parent/home" object in an instance variable of the object associated to it.

  • I guess you are talking about letterbox scaling.

    construct.net/en/tutorials/supporting-multiple-screen-77

    Designing for "Scale Outer" mode is generally good.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • How are you displaying your dialogue?

    Assuming you have something like set text to array.at(x), in that same event you would add the action to set animation to array.at(x,1).

  • On text created is a good idea, but only the text that was created is picked.

    Did you add a pick all text in that event?

  • I think the most straightforward and resource friendly way is a tiled background. No need to change it's size, just make it double the size of the viewport and move it by a multiple of it's source image's width when necessary.

    No need to bother with the wrap behavior either.

  • Is your animation named correctly?

    Is it in the correct object?

    Is the animation speed something besides 0?

    Is your event sheet linked to the correct layout?