John Cutter's Forum Posts

  • A couple of years ago I put out a daily game called Word Dad (www.worddad.com). It has been running without issue for nearly two years.

    About four days ago a friend of mine said the game loads but won't run. He tried to download my data file and the file is not available. He cleared his cache but the problem persists.

    I can run the game just fine and the data file is definitely there and working. I thought it was a strange issue only affecting his system, but looking at Google Analytics I see a drop in players four or five days ago. (From an average of about 65 daily players to 42 daily players.) So it seems to be working for many people, just not all.

    Oh, my friend and I both play on PC. Another friend tried to play on his iPhone and it won't work for him either.

    Have there been any major browser updates or something? Anyone else having issues within the last week?

  • The events for this were SUPER simple. I tried to do a calculation based on the size of my image, screen sizes, etc., but I gave up on figuring that out. I eventually just hardcoded it to:

    -> System: Set layout scale to 1750÷spr_camera.Width

  • Due to the lack of interest I'm not going to do a tutorial, but here are the basics, as I recall (it's been a while):

    1. I created a scene with my cartoon image.

    2. I added a rectangular sprite and made it semi-transparent. This is my "camera". If I scale this rectangle up or down the camera will zoom in or out appropriately.

    3. Using the timeline feature I moved my camera to where I wanted the scene to start and set a keyframe.

    4. I then moved my camera sprite to the next panel, scaled it to what I wanted players to see, and set a new keyframe. I did this for each panel.

    5. To get the handheld camera effect I simply changed the path mode to cubic bezier. Set it back to "Default" if you don't like the effect.

  • Wow, I was just trying to be helpful. Not sure why my post got downvoted.

    I may remove it.

    UPDATE: Now I have even more downvotes. What is going on with this community? It used to be great! :-(

  • The AI generated comic panel isn't great, this was just a proof-of-concept. Also, the hand-held camera movement is a single parameter that I can turn on and off.

  • I had to give up on my Western solitaire game as I'm taking care of my 96 year old Mother and I just can't concentrate with all the constant interruptions. :-(

    Curious if anyone would be interested in my storytelling approach? Once I wrote a little bit of code I used AI to generate a comic panel and I was able to implement the entire scene below in about 5 minutes: (a bit more with the sound effects)

    youtu.be/f_fMZnokhaU

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Just to be clear, what’s failing is the array load action fails to load your json since it’s wrong somehow?

    Here's what I'm seeing:

    1. I have an Excel sheet with text in rows 1 through 7 (5 columns)

    2. I used VBA to export the text to json (C2/C3 format)

    3. I imported the json file into my project and it became a C3 "table"

    4. I modified my VBA code to only use rows 2 through 7 (row 1 is headers)

    5. I exported again, the json is valid, but when I imported the file into my C3 project it didn't turn into a table... I just saw the json data. (Plus, there were little squares around the apostrophes in the text).

    6. I changed the VBA code back to rows 1 through 7 and it imported into C3 perfectly again.

    If it breaks again I'll check the browser console and report back.

    Thanks again for the replies, ROJOhound. Really appreciate your help.

  • Good grief, this is driving me crazy. After getting the file to import correctly I noticed that I had TWO rows with category names. I'm not sure I need category names at all so I deleted one of the rows and I changed my Excel program to start at row 2 rather than row 1. (I was planning to just keep the category names in my Excel sheet only.)

    After I made this change I couldn't import the file again! I tried Replace initially, then I deleted the file and imported it as a New file. But unlike last time, it STILL wouldn't work. I was seeing just the json data and strangely, there were little squares around all the apostrophes in the text.

    Then I changed my code back to starting at row 1 again and now it imports just fine. WHY??? For what it's worth, in all cases my code has been outputting valid json files... they just won't import to C3.

    Did you manually fiddle with the file at all?

    Thanks for the reply, oosyrag! No, other than that one test, I just export the json file from Excel and then I try to import/replace the file in C3.

  • Thanks, ROJOhound! I've got it working now.

    I attempted the same thing you did, I copied the BAD json data to a new text file and saved it. I then tried to replace the old file, but it STILL wouldn't import correctly to C3. (I was seeing the json data and not C3's table format.)

    Next, I tried deleting the old json file and I imported the new one as a NEW file. This time it worked! I even added some Spanish sentences to my Excel sheet, exported, and this time I did a Replace. It still worked!

    So my issue seems to be that I had a bad json file and replacing it with a good file didn't fix the problem. Can anyone explain how/why that could happen?

    UPDATE: Grok seems to think that the issue was caused because I tried to REPLACE a json file with width 32 and height 3, with a new json file having the dimensions width 32, height 6. Could this have been my problem???

  • Last year I wrote a C3 program that needed a big array. I put the data in Excel and wrote some VBA code to export it to JSON. Then I added the file to Construct 3.

    This works perfectly every time.

    Now I'm working on a new program and I want to replicate what I did before. I grabbed the Export code from my old program and put it in my new one, but I can't get it to import into C3. First, I validated the JSON file with json lint (it's perfect). Then I thought the issue was some Spanish characters I had in the text files. So as a test I replaced all the sentences with English, and made sure there were no trailing characters.

    It still won't import into Construct 3.

    Finally, I said 'screw it' and I just made a copy of the old program and replaced the old text with my new (English only) text.

    It STILL won't import into Construct 3.

    This makes NO sense to me. Does anyone have ANY idea what the problem could be???

    OLD JSON (imports perfectly)

    {"c2array": true,"size": [3,7,1],"data": [[[""],[""],[""],[""],[""],[""],[""]],[["7/23/2023"],["gapes"],["croon"],["blare"],["Do you remember mood rings? I have been wearing one since the 1980's, but I seem to have lost it."],["I'm not sure how to feel about that."],["0"]],[["7/24/2023"],["eek"],["reek"],["jut"],["Every weekend we take Mom to a restaurant called \"Aunt Alice's\". Their sign says: \"Breakfast! Any time!\""],["So I like to tell our waitress, Amanda: \"Pancakes, please… during the Renaissance.\""],["0"]]]}

    NEW JSON (won't import into C3)

    {"c2array": true,"size": [3,5,1],"data": [[["Spanish"],["English"],["Category"],["Bucket"],["Schedule"]],[["Hola"],["Hello"],["General Conversation"],["New"],["New"]],[["Hola"],["Hello"],["General Conversation"],["New"],["New"]]]}

    Again, these two files were generated using the EXACT SAME code, from a simple Excel sheet with x,y rows of text. (Both of the JSON files have this encoding: UTF-8-BOM.)

  • Sorry for being unclear. I was working on a game for Steam but for a variety of reasons that's no longer an option for me.

    So I took the current game and instead of exporting with NWJS I exported for Web and put it on my website. The game runs, but sometimes tweens don't finish and the music just suddenly (and seemingly randomly) stops mid-play and never starts again.

    Could be memory maybe? My screens are 1920x1080 but each background is significantly larger to handle different resolutions and aspect ratios.

  • For a variety of reasons it looks like I will have to abandon the game I was building for Steam. Out of curiosity I decided to see if it would run as a web app. The framerate dropped in half but the game worked... mostly.

    I ran into two issues:

    1. One of my tweens sometimes didn't finish "tweening". (This never happened with the PC version.)

    2. Some of my music would suddenly stop playing and never start again.

    Any idea why these things were happening?

  • I can usually get enough AI help that I don't need to rely on this forum all the time, but here's another issue that I can't get working, and the AIs are no help at all:

    Quickly, here is the intended behavior:

    1. The player clicks on a key card (fam_cards.cardType = "key")

    2. The key flies to the jail card (fam_cards.cardtype = "jail")

    3. Animate the jail card to look like the cell is opening

    4. When the animation is finished (frame tag = "done") start a tween (animateCard) to fade the jail card

    5. After the jail card fades out, run some JS code and enable a group

    What keeps happening:

    I can click on the key card and it will correctly fly to the jail card and start the jail card animation. When the animation finishes, nothing happens.

    I had similar events before turning to AI. Here is its suggestion:

    // 1) Key lands → open the jail (what you already have)
    spr_key: On Tween "moveKey" finished
     → spr_key: Destroy
     → System: Pick fam_cards where fam_cards.cardType = "jail"
     → fam_cards: Set animation speed to 8
     → fam_cards: Start animation from current frame
    
    // 2) As soon as that jail hits the “done” tag, fire the fade **once**
    fam_cards: On animation frame tag "done"
     System: Trigger once
     → fam_cards: Tween "animateCard" property Opacity to 0 in 3 seconds
     (In Out Sinusoidal, destroy: Yes, loop: No, ping pong: No, repeat count: 1)
    
    // 3) When the fade really does finish, run your JS + re-activate group
    fam_cards: On Tween "animateCard" finished
     → Run JavaScript: removeCardIDs(runtime)
     → System: Set group "Face Up or Down" Activated
    
  • Well, dop2000, you have once again proven your genius! Thank you!!!

    I was pretty sure I had tried this already, but this time it worked. But... WHY did combining the sub-events work?

    Super glad it's working now, but still confused about the *why*...

  • pick all fam_paws appears to be redundant. I guess you've tried without that?

    Yeah, one of the LLMs suggested that. It didn't make a difference, but I left it in anyway.