frame

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In Register

Possible entity saving bug

You'd think I'd have learnt by now to not break FlowLab, but unfortunately I'm incapable of intelligence. Here's the link to my game: https://flowlab.io/game/play/1339571
I seem to have found a bug where my enemies won't save the information I put in the extractor nodes. The game currently has 2 working stages that both have enemies. They are the loading screen and the "Combat" stage. I coded the enemies so that they have extractor nodes that extract the player ship's information and then respond to that information by tracking the player, pointing at the player and then attacking the player (feel free to copy my code if you want). This code is also present in the "Turret" enemy. As you can see, this code is heavily reliant on the extractor node.
However, this is where the root of the issue takes place. For some reason, FlowLab will save my code, but not the entity I put in the extractor node. You know how in order to extract another entity's info, you need to put the entity type and the name of the entity? Well, FlowLab isn't saving that information. After thorough testing, I have concluded that only ONE level with this info coded in the enemies will have the entity saved on the extractor node.
So for example let's say that the Combat level works and the enemies have the working code. That will mean that the enemies on the Loading Screen level won't have the working code. I playtest and see that, so I fix their code in the edit menu. However, after I fix that code, the enemies on the Combat level subsequently break. The "entity" on their extractor nodes will be removed as soon as I fix the code for the Loading Screen, and vice versa. This makes it so that it isn't really fixable.
You can try it for yourself. As soon as you fix the currently bugged Loading Screen enemies, the enemies on the next level (the Combat level) will break.
I want to know how to fix this and if it even possible to fix this, because this is a pretty serious game-breaking issue. I am not sure if this is a bug or not but it seems like a bug. I also want to ask if there is an option for manual saving in FlowLab because I feel like that might fix this issue.
Sincerely, A Water Molecule

Comments

  • It looks like the extractor works until you switch levels, then you have to keep resetting it.
    This is definitely a bug that @grazer needs to know.
  • edited February 13
    Yeah, which is really annoying. There's no node that can substitute the extractor, and since my code is heavily extractor-reliant, it breaks my code and the enemies. I am not sure if this bug will only affect these two levels, but if it doesn't and will affect future levels, it could seriously cripple my upcoming boss fight. I hope Grazer fixes it soon.

    EDIT: It appears that this entity saving bug is also affecting my Rick Blocks. This makes the first layers of Rick Blocks in the loading screen broken. I fear that this entity saving bug might be present in most, if not all game objects. This can be a potentially game-breaking bug. Grazer really needs to fix this thing.
  • Jesus Christ, this issue DOES persist and is not just limited to the first two levels. I am making the final Mothership boss battle and the turrets do not work. The entity information in the extractor nodes are missing.
    I have arrived at a disturbing conclusion. For some reason, only ONE level will have working extractor nodes. This has effectively crippled my game, and I cannot make any progress unless this is resolved. I am not sure if this issue is exclusively for my Spak ship entity, but if it isn't, then this bug really is a game breaking bug.
    @grazer Plz fix
  • You could extract this x and y in the player and message that to all the ships.
    But really, this shouldn't need a work around and I think @grazer needs to see.
  • I think I have a possible work-around solution, but if it doesn't work then I will have to abandon or possibly restart my project. I am really hoping great god Grazer can save us all. I shall pray to him, and hopefully he gets this fixed. If not, well, I'll be the saddest boi on planet Earth.
  • @grazer, the extractors keep resetting going to other levels
  • Aight, it failed. I cannot fix it by using the parent function. It seems like our only hope now is our divine god @grazer. Let's just pray
  • NVM, I found a fix. Apparently, If I create a new enemy and copy paste the code of the original enemies into the new enemies and do a little fixing, the extractor works. I can have multiple working enemies if I use this strategy.
    OFC, this means I must make new models and entirely new enemy animations which would be very time-consuming, but hey. A delayed project can be perfect, but a rushed one can never be.
  • Hey @Dihydrogen Monoxide - I apologize, I thought I had responded to this already.

    What I think is happening is a bit of confusion about the way the extractors work. When you set an extractor to point at a specific object in a level, it will only extract from that specific object. When you switch to a new level and add new objects, those are not the same objects, even if you give them the same name.

    For example, you cannot have an extractor set to point at an object in Level 1 also extract values from an object in Level 2 - those are two different objects, and the extractor only points to the first one.

    When it comes to sharing logic between different enemy types, I recommend that you consider using a Parent object. You can create an object type, maybe named "Enemy" or something, and add all the common shared logic there. Then when you create different types of enemies, set thier Parent property to "Enemy". This way you can avoid copy & pasting code.

    Using Parents also allows you to do things like send a message to or trigger a collision on all "Enemy" types instead of duplicating for every enemy. Does that help at all?







  • Yeah man. That helps a lot. I thought it was a problem in the code of the extractors but I guess it's just made kinda weirdly, but I do see why it was made like this. Copy-Pasting code will still have to happen to some degree because of the way I plan to make the Mothership (they will be just stronger versions of the base enemies), but this helps a ton. I have some very valuable new insight on the extractor nodes. This will definitely help me on my next game.
    (Anyways it seems like joining the Grazer cult has actually worked in summoning the divine god. I will continue to practice in the Grazer cult).
  • oh yeah, I completely forgot that every level has a different (name) player object.
Sign In or Register to comment.

flowlab.io

| make games in your browser
@ 2017 Flowlab.io, All rights reserved.

Contact us

Get In Touch