althea_texas's Forum Posts

  • I noticed that there are some sample files in the early part of this message thread, and that's exactly the sort of thing I need to find. Unfortunately, those links are no longer functional.

  • Hi -- I just purchased this dialogue system for classroom use. Some of my students are writing dialogue-based games as their final project, and this seems like a very useful template.

    Can anyone point me to some sort of tutorial or sample file which shows this template in action? I have been reading through the message thread, but the earlier posts seem incomplete and the more recent posts seem to assume that one has a fully functional dialogue system in place.

    I don't need hand-holding, but any sort of installation instructions or big picture advice would be deeply appreciated.

    Aaron

  • Hi,

    This isn't really a bug report as much as a question about the best practices for troubleshooting when C2 hangs in the middle of exporting a project.

    My students recently finished their first C2 assignment. This morning, I demonstrated how they should export their projects to HTML 5 format. Out of fifteen students, approximately five students encountered an "infinite export" bug in which the progress bar never ends. It was impossible to cancel out of the program, so we killed the process in task manager. They replicated this problem several times before we moved on to the steps described below.

    It occurred to me that the problem might be caused by some sort of Dropbox file lock situation, so I encouraged students to export to the local downloads folder instead. This appeared to have solved the problem for a couple students, but not all of them. I also encouraged them to double-check to make sure the minify option was checked. This appeared to solve the problem for two more students, though I don't know if there is a causal link.

    For the fifth student, I ended up copying the project file over to my Dropbox folder. Then, I opened up the project on my computer and was able to successfully export it. This suggests that there was nothing wrong with her file. After class, I rebooted the fifth student's computer and was able to successfully export on her machine as well.

    So far, there has not been much rhyme or reason to this problem. I did not encounter any export problems when using C2 last year for a previous version of the class.

    Does anyone have tips about a) common causes of export errors, and b) troubleshooting steps that I might want to investigate?

    Thanks!

    Aaron

  • That's great to know, Lamar!

    I understand that, as with web design or other areas of programming, there will be many different theories about best practices. My question was motivated by the desire to understand more about the *rationale* behind some of these practices. That's why I asked folks to point me toward resources (books, videos, etc.) that touch on the larger principles related to game design while providing additional context. I'm not looking for someone to say "you should do 'x' and not 'y'. It's much more helpful to hear people explain the rationale and context behind these practices -- *why* should we do certain things.

    One thing I've taken away from all of this is the recognition that, as you mentioned, there are no longer cookie cutter holes that we have to fit our games into. This is very cool indeed.

  • Thank you, ErekT, Tarek, MPPPlant Official, and Newt for your incredibly helpful replies. After reading through your explanations, and following the links, I have a much better grasp on this issue. This is exactly what I needed!

    The Construct development community is awesome!

  • Last semester, I used C2 for the first time in a course on mobile gaming. (We once used Flash Actionscript, but that is no longer a viable option.) This course emphasizes programming, graphic design, and game mechanics, but performance issues have never been a primary focus of the class. I'm working with a student to convert his "proof of concept" game into a full-blown game that will perform well across a variety of platforms.

    We are trying to get up to speed on best practices for 2D game development, particularly as far as developing graphical assets is concerned. We found Toby R's tutorial on game resolution to be very helpful, and we have also been reading through everything we can find in these forums. However, much of this information has been pieced together from bits and pieces of various tutorials.

    Can anyone point me toward resources (in any form) which cover some of the big picture principles of 2D game design? For example, why are tiled backgrounds and tile maps recommended, and how big of a problem is it if they aren't used? (I've read through the documentation and understand the basic argument, but feel as if there's a bigger picture that I'm not quite grasping.)

    We are also trying to understand sprite sizing issues, from the very basic question of "Does it really matter if they are squares?" to "What is a realistic size for sprites that will look good on contemporary phones?" We understand that graphics should be created as vector graphics, that they're supposed to be sized in multiples of eight, and that we will probably end up with two sets of graphics (a set for high-resolution browsers and a 'one size fits all' set of images for everything else). Some have suggested that the one size fits all sprites should be 64 x 64 pixels, but this seems *really* tiny.

    I'm looking for any documentation -- from forum posts to books to video tutorials or podcasts -- that talks about these "big picture" issues related to 2D game design. Something that will help me understand what we should do, but -- even more important -- why we should do it that way. If there is anything that you've found personally useful in developing your strategic thinking as a 2D game developer, I'd love to know about it.

    For now, we're pulling together the first level of the game in question with the student's existing graphics that don't really follow many of the best practices for game assets. The sprites are of irregular sizes, some of the backgrounds are extremely large, etc. His graphics are beautifully drawn, and I'm hesitant to make him go back to the drawing board until he can see for himself that we are encountering performance problems. We're looking at this as an experiment, and I'm hoping that this will demonstrate in a tangible way *why* we should be following the best practices. At the same time, I'm trying to deepen my own knowledge and understanding of the big picture.

    I would be grateful for any and all suggestions. Thanks!

  • Thanks, Gabriel. This makes sense. It does seem logical that pinning and triggered events would be more efficient than using once every tick. I wonder if someone should update the "jungle platform tutorial" to emphasize the use of pinning rather than on-click events. Hmm... I'll just add a comment to the bottom of that tutorial.

  • Thanks, everyone. I appreciate the advice, and it makes sense that native JS will run faster than it would if the engine is required to do the overhead.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • What if you were doing this with a collection of enemies? For example, imagine that I had 12 fox enemies with their own skins. Would this still seem appropriate?

    I guess I am wondering if there is any advantage of doing it one way?

  • In the excellent jungle platform tutorial, we are taught to attach an invisible placeholder box to the player skin. As part of that tutorial, we learn how to use the "on every tick" event to attach the skin to the placeholder box.

    In other tutorials and examples, people use the pin behavior to attach a sprite skin to a placeholder box. This also seems to work just fine.

    Is one of these approaches recommended over the other approach? In a way, the pin behavior seems slightly more elegant because you just need to do it once rather than having the command executed in your event sheet on every tick. But I guess the pin behavior is probably doing the same thing underneath the hood?

    Thanks for any advice!

  • I think I might have figured it out. When the layout starts, I use "for each instance of monsterPlaceholder" and dynamically pin the monster skin to the monster placeholder.

    This seems to work, but is this the recommended practice? Is there a better way of doing this? Are there times when my solution would be a very bad idea?

  • Thanks for the pointers, Gabriel!

    In the rocket example that you shared, you dynamically added rockets into the game at random spawner locations. I am trying to implement this concept in a modified version of the default platform template.

    I have multiple instances of a monster placeholder object (objEnemyBox), and I would like to pin monster skins (objMonsterSkin) to each of these at the beginning of the game. You can see what I've done in the attached CAPX file:

    transmedia.trinity.edu/~adelwich/forum-images/dynamic-objects.capx

    At the beginning of the layout, I'd like to attach skins to all of the objEnemyBoxes.

    1) Do I need to dynamically add the monsters (objEnemyBox) through my event sheet when the game starts? Currently, I have just dragged them on to the layout where I want them.

    2) If I need to add them dynamically, what is the best way to do this? Should I loop through each instance of a spawner object and place those objects where I want the enemies to exist?

    Thank you for your help!

    Aaron

  • Fantastic! I will look into this now. Thanks!

  • I'm not sure I know what you mean about the placeholder. Does the placeholder work for the *enemy* animations? Thanks!

  • I'm not attaching a CAPX file to this message because I'm asking it on behalf of a student who is enrolled in my games class. (I teach at a liberal arts university in San Antonio, Texas.)

    Her game is a simple platform game that follows the logic of the jungle platform tutorial. An invisible border box is attached to the skin for the player character, and that border box is used to detect collision with other objects. The platform behavior is also attached to the border box.

    Enemies move from left to right, and they check for collision with an invisible edge sprite when they reach the end of their platforms. In this case, the enemies are just an animated sprite. They do not have an invisible box attached to them. As in the tutorial, an instance variable is used to keep track of the enemy's direction, and the enemies are flipped each time they collide with an invisible edge sprite.

    As the player moves through the game, the enemies suddenly start running off the platforms and falling to their deaths. It seems like it might be a collision detection problem. For some reason, it is more likely to happen when the enemies are outside of the viewport window. This is what the collision boundaries look like for the enemy sprite:

    I noticed that the fox sprite is *slightly* wider on certain frames than on other frames. (Never more than a couple pixels.)

    Should we be using invisible border boxes with our enemy sprites to avoid this problem? If so, how would one do this with multiple enemy sprites? Would we need to have a unique invisible border box for each enemy sprite? That seems hugely unwieldy. Would we use UIDs to pin invisible border boxes to enemy sprites when the layout loads?

    Thanks in advance for any help you might provide.