pandabear7413's Forum Posts

  • Great feedback guys, I need to try some of these approaches. I know the AI coding topic is still pretty controversial but I believe it's a great tool and soon everyone will be using it in some way to create better code/games.

  • What are folks using for AI and how are you using it in your dev process?

    I rarely use AI for C3, but I recently needed to implement some complex logic and I found ChatGPT to be helpful. But after a while it started hallucinating, so I tried Claude and had even more success. It's good to have a helper like Claude for complex code.

    For both, they gave me the C3 event pseudocode and I had to enter the C3 events manually. They both understood the js I copy/pasted from C3 into the chat, and they both generated js when asked, but when I tried to paste that code into C3 I got errors.

    What are folks using for AI, and how are you using it? Is anyone having success with something like CODEX that's integrated with your codebase? Have you fed it your entire project, or just snippets? Are you able to have the tools generate the js for you to paste into C3? What's working for you?

    Thanks

  • Thanks but I should have clarified that I don't want to use looping animations. This code is a fragment from a function that changes the animation once an existing one completes. It also changes the animation speed at that time (different from the animation speed set in the animation editor).

    So my question still stands. Why does C3 work this way, and why do I need to use Wait(0) at all? Seems like when an animation ends, I should be able to set a new animation AND set its speed at that time.

  • Can someone please help me understand what C3 is doing here and why it works the way it does?

    With this code, animationSpeed is only set properly in the 3rd scenario. The first 2 scenarios set the animation properly, but use the default speed vs the 60 I set in the code. Why?

    Also, wait(0) feels like a hack. Is there a better/proper way to do what I want without using wait(0)?

    https://drive.google.com/file/d/1Jkd0pM4u2OmluelqqqGsBMBBLliBEzzg/view?usp=drive_link

  • Agreeing with winkr7 and dop2000 here. I'm noticing how many thumbs-downs they're getting, even though historically they're 2 of the most helpful members in this community.

    Seems funny that C3 devs slam on AI because it 'makes coding easier'. Isn't that what C3 does?? If you want to be puritanical about game development, why aren't you building your game in straight JavaScript? Or assembly language??

    AI is a tool, and I don't see it replacing devs. Instead, it will allow devs to make better games, and faster.

    The OP is spot on - C3 can really benefit from AI, and the fact that C3 isn't AI-friendly is going to turn devs away from C3 to other engines. I used ChatGPT yesterday to help with some new music-playing logic for C3, and while it had great suggestions, it hallucinated several times. I would love if I could feed my whole project to ChatGPT and ask it how I can improve my savegame system. That way I can focus on making fun stuff for my game, vs messing with the spaghetti I've 'engineered' over the years to save games.

    Ashley - Would love to get your thoughts here.

  • Thanks rozpustelnik! I found your bug report, thanks for doing that. Been having this issue for years but it's only now becoming an issue for my players.

  • I’m seeing a consistent keyboard focus issue with **Construct 3 → WebView2 export**.

    **Reproduce:**

    1. Launch the WebView2 build.

    2. Keyboard input works normally.

    3. Click outside the app window *or* Alt+Tab to another window.

    4. Alt+Tab back to the app.

    **Result:**

    The app regains window focus, but **keyboard input no longer works** until the user clicks inside the game window with the mouse.

    **Expected:**

    Keyboard input should resume automatically when the app regains focus via Alt+Tab.

    This does not appear to be an event-sheet issue. It feels like the embedded WebView2 content isn’t regaining keyboard/DOM focus when the window is re-activated, so Construct never re-enables keyboard input.

    **Questions:**

    * Is this a known limitation/bug of the WebView2 export?

    * Is there a recommended workaround (forcing focus back to the WebView, JS injection, or template change)?

    * Has anyone found a reliable fix without requiring a mouse click?

    Tested on latest C3 stable + latest WebView2 runtime.

    Thanks

  • Windows 10

    Chrome 142.0.7444.176

    Same experience with standalone C3 editor

    The C3 editor operates slowly when working with large projects. Most editor functions are much slower than normal. E.g., opening the animation editor, moving views/tabs, adding events, entering conditions/actions into events, etc. But if I edit a small project, such as one of the example projects available with C3, the editor speed/performance is normal.

    The performance doesn’t seem to affect other open C3 editor tabs. In other words, if I have 2 C3 Editors open in 2 separate Chrome tabs, and one has a large project open and the other has a small project open, the editor for the small project will still operate at normal speed, and the editor for the large project will operate slowly.

    This issue started about 2 weeks ago. My project size hasn’t changed much, in fact it got smaller since I deleted a bunch of unused sprites. The Chrome tab shows 1.8 gb, but the total filesize in my project folder is only 300mb (lots of images). I have less than 10 tabs open in the editor (i.e., event sheets, layouts, etc).

    I want to ask if anyone else has had a similar experience, since I can't upload my entire project and submit this as a bug. Since this just started happening, I'm wondering if it's an issue with a new Chrome build.

    Note: Performance with MS Edge is definitely faster, but large projects still are a little slower than small projects.

    Thanks

  • DiegoM Sorry, here's the public file

  • FYI this is what I mean by 'order', see how the frames are not in the correct numerical 1-5 order, even though the file names are *01-*05.

  • Looping in DiegoM as this relates to his awesome importer features described here

    I'm having some weird behavior with the sprite imports. I've been importing sprites from folders (using drag-and-drop into the C3 sprite editor Animations panel) since this feature was implemented and it's been working great. However, a few days ago I noticed that the sprite animation's frame order is not consistent after import, and I've been racking my brain to figure out what changed. I tried C3 stable versions all the way back to 388.2 and they're all having the same issue all of a sudden. I use Chrome and Windows 10, maybe something changed with those?

    Here's a link to a sample import. If I import this as a single .zip, everything imports correctly. But if I extract it to a folder, and then import that folder, the individual animations have different frame orders. And those orders are pretty random, i.e. if I import the folder again the orders often change. The only way I can get the frames to import consistently is to remove the "sort": flag from the json.

    Can someone try it and see if you get the same experience?

    Thanks

  • Thanks, but the problem is the enemy doesn't decelerate when passing the player, instead it maintains 100% speed on the turn. And I can't access the bullet vector speed of the enemy object. Am I missing something?

  • In a 2d sidescroller, I want something similar to how the ghost moves in the 'relic hunter' example. However, in my game the player can 'duck', and when they do I want the ghost to miss the player and fly past them, decelerate, and then accelerate back towards the player again. It doesn't seem like Follow behavior supports acceleration / deceleration like this. I also tried setting the ghost position to the player's using lerp to calculate the x/y, but the ghost starts to decelerate before getting to the player.

    Thoughts on how to do this?

    Thanks

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • So I found an alternative, and that's to use a TileMap instead of a DrawingCanvas. I had a lot of issues with DrawingCanvas and savegames, LocalStorage, restarting layouts, etc. So far TileMap has been a good alternative with none of the same issues. Thanks to anyone who looked at this.

  • I'm making a sidescroller and I'm using the DrawingCanvas as part of a levelMap feature. Basically, the DrawingCanvas is the size of the layout, overlays the layout, is invisible, and is initially all black. As the main character moves, the area around the mc is 'erased' in the DrawingCanvas. When the player opens the levelMap, they'll see the entire layout zoomed out, with the DrawingCanvas (now visible) on top. So they'll only see the parts of the layout where the mc has been, because those areas have been erased in the DrawingCanvas.

    This works great, but I need to save the DrawingCanvas for savegames. Because my layout is so large - 22k x 11k pixels - saving the DrawingCanvas to LocalStorage takes 5+ seconds. I'd like to reduce that savetime. FYI I'm using this save approach, Thanks dop2000 ! - construct.net/en/forum/construct-3/how-do-i-8/save-current-state-163694

    Since I don't need a very high-quality image in the DrawingCanvas, is it possible to downscale the DrawingCanvas to maybe 10% of the size, and then save it to LocalStorage? Of course this means I would need to upscale it when reloading the savegame? If so, how would I do that? ChatGPT gave some suggestions but she's hallucinating somewhat and sending me down ratholes.

    Any other options? Is there a way to start with a smaller DrawingCanvas, and clear areas of it based on a layoutSize-to-DrawingCanvasSize calculation of some sort? I would then have to expand/resize the DrawingCanvas when viewing the levelMap...

    Or are there other ways to design such a levelMap that doesn't use a DrawingCanvas, maybe some other object type?

    Thanks