1. Trouble with the game?
    Try the troubleshooter!

    Dismiss Notice
  2. Issues with the game?
    Check the Known Issues list before reporting!

    Dismiss Notice
  3. Before reporting issues or bugs, please check the up-to-date Bug Reporting Thread for the current version.
    0.30 Bug Reporting thread
    Solutions and more information may already be available.

Unable to set non-conflicting keybinds with conflicting keys

Discussion in 'Troubleshooting: Bugs, Questions and Support' started by TomerBomb, Feb 13, 2021.

  1. TomerBomb

    TomerBomb
    Expand Collapse

    Joined:
    Apr 9, 2020
    Messages:
    9
    I've noticed that trying to set vehicle specific keybinds that if the key exists on a different vehicle it gets removed.

    For Example;
    Spawn the pickup and the bus.
    On the pickup set the tailgate to open with "K".
    Swap to the bus and set the bus to kneel with "K".
    swapping back to the pickup, the tailgate can no longer be opened by pressing "K".

    This does happen while in safemode.
    I have also done a steam integrity check and all is fine.

    I'm yet to do a clean install but I want to wait and see if anybody else if having this issue before doing one.
     
  2. P_enta

    P_enta
    Expand Collapse

    Joined:
    Jan 11, 2020
    Messages:
    3,029
    I really don’t like how it does this. This isn’t a glitch they just developed it this way.
     
  3. TomerBomb

    TomerBomb
    Expand Collapse

    Joined:
    Apr 9, 2020
    Messages:
    9
    Negative, The game has those conflicts by default. I have also created those types of conflicts on the release of v.0.21.
     
  4. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,060
    For now this is a game limitation which really sucks. It also means that multiple mods that add extra key bindings to one vehicle will ALWAYS conflict no matter what.
    It would be cool if key bindings could be defined in a LUA controller file or a Jbeam file of a certain part, this way only 2 vehicles that have the same controller name or part name would conflict which wouldn't happen very often. The UI would also look a lot cleaner without all of these hydraulics bindings for every Bluebuck config that doesn't use them.
     
  5. DaddelZeit

    DaddelZeit
    Expand Collapse

    Joined:
    Jul 17, 2019
    Messages:
    3,319
    One way to get around this for now is adding CTRL or SHIFT or ALT infront of the actual binding,
    this way you have tonnes of keys to work with. These can also be combined.
    Setting it up is simple, just press both keys at the same time when binding.
    You can also technically make a
    Code:
    CTRL+SHIFT+ALT+x̷̡̯̪̣͍͓̲̏̀̈́̋̈́̐̇͝ͅͅ
    binding.
     
  6. TomerBomb

    TomerBomb
    Expand Collapse

    Joined:
    Apr 9, 2020
    Messages:
    9
    I'll repeat myself and say that this isn't a game limitation. if it was a game limitation 1. the game wouldn't have those conflicts by default 2. the game would warn you that the keybinds would conflict 3. why would they remove something without saying that they have removed it.
    --- Post updated ---
    Also just to note that I think it has to do with the code that sets the keybinds as I have 2 ways around it.
    1. Set all keybinds from 1 vehicle can work temporarily.
    2. Going into the inputmaps and manually adding the code . This works but the keybinds cannot be removed (atleast for modded inputmaps).
     
  7. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,060
    It IS a game limitation, it just doesn't warn you because writing a conflict detection code that would only be used to warn you and say that the bindings were removed would be such a waste of code and not worth it at all. Also, even manually adding the code to inputmaps still causes this to happen, I have tested it.
     
  8. TomerBomb

    TomerBomb
    Expand Collapse

    Joined:
    Apr 9, 2020
    Messages:
    9
    Do you even play the game? There IS code that warns you if it will cause conflict. also reread every thing I have wrote as it should be clear that;
    1) This isn't a game limitation.
    2) I know that this isn't a game limitation as I have done it before and the game has it by default.
    3) I am talking about something that SHOULD NOT be happening.
     
    #8 TomerBomb, Feb 14, 2021
    Last edited: Feb 14, 2021
  9. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,060
    Did YOU even read what I said????? Probably no. I don't want to continue this nonsense, you clearly know nothing about game development and what a "game limitation" is.
     
  10. TomerBomb

    TomerBomb
    Expand Collapse

    Joined:
    Apr 9, 2020
    Messages:
    9
    1) I've probably played the game longer than you.
    2) I probably know more about game development than you.
    3) I probably know more about how the game is coded than you.
    4) I only noticed this because I am in the middle of creating a mod.
    5) Why I am even listen to you. someone who regularly gives wrong/misleading information.
     
  11. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,060
    Ok then try to actually explain WHY you think this isn't a game limitation. A game limitation is something caused by the way something in the game is coded that causes unintentional behavior which can't be fixed without recoding the system significantly, and a "glitch" is either something caused by the game limitation or a small thing the developers missed and can be fixed easily. The way this is coded is that key bindings are recognised PER VEHICLE, each vehicle only "sees" its own bindings and not any others. This means the game will only "know" about the bindings of the current vehicle at the time and ignore all others. It will overwrite them if it doesn't know they exist. It DOES give a warning if it's the same vehicle or common bindings because it can see them. The system I was talking about would have to detect conflicts for EVERY VEHICLE and it would be impossible to code and a huge mess, this is why it's a game limitation. What I had in mind for a different system would be that the key bindings are not stored in the data of the whole vehicle but instead in controller files or Jbeam files of specific parts that use those bindings. This way the game would have to check every Jbeam file of every spawned car and store the key binding data of them somewhere. That COULD affect performance a little bit when switching between many vehicles but it would remove the need of implementing the key binding collision detection system that I talked about because all the bindings would already be stored somewhere and the game would see all of them at the same time.
    You may know more about how the game is coded than me but the fact that you only noticed it when making a mod doesn't make you any better than me. And I don't spread any wrong informations, I just say what I learned from testing stuff.
     
  12. DaddelZeit

    DaddelZeit
    Expand Collapse

    Joined:
    Jul 17, 2019
    Messages:
    3,319
    Yes, this is supposed to happen. If it wouldn't have been coded that way, (coming back to your example) pressing K on the bus would open the tailgate on the pickup aswell.
     
    #12 DaddelZeit, Feb 14, 2021
    Last edited: Feb 14, 2021
  13. TomerBomb

    TomerBomb
    Expand Collapse

    Joined:
    Apr 9, 2020
    Messages:
    9
    I'm talking about vehicle specific bindings not global.
     
  14. DaddelZeit

    DaddelZeit
    Expand Collapse

    Joined:
    Jul 17, 2019
    Messages:
    3,319
    I know. I, too, am talking about vehicle specific bindings. You can set the pickup tailgate binding to K without issues, but when spawning the citybus in and overwriting the K binding, the game deletes the pickup binding.
    I have never seen Agent_Y give false/misleading information, he regularly looks into game-code so I trust him on what he's saying.
    --- Post updated ---
    Update: I was wrong.
    Everything works fine:
     
    #14 DaddelZeit, Feb 14, 2021
    Last edited: Feb 14, 2021
  15. Agent_Y

    Agent_Y
    Expand Collapse
    Jbeam/QA support
    BeamNG Team

    Joined:
    Jul 10, 2020
    Messages:
    10,060
    For this specific thing I haven't looked into the code because I have no idea where it is, probably somewhere in the game engine C code and I haven't ever gone there. But I have run many tests on that and what I have written is my conclusion. I also tested conflicts between multiple mods that add bindings to the same vehicle and that seems much more random. Disabling/enabling the mod can create a huge mess and even delete default in-game bindings. For some reason that usually doesn't happen if the mod you are disabling/enabling has the screen displaying order set higer than the vanilla bindings and the bindings of the other mod. I guess that's why some modders set their binding orders to a ridiculously high value like 9856 to make sure it will never cause this glitch. Overall this system is very messy and I would prefer a different one.
    --- Post updated ---
    That obviously wouldn't happen because even the common key bindings don't work like this, using throttle on 1 vehicle doesn't give throttle to all of them. As I said the game only sees and uses the current vehicle bindings, probably if it saw all it would happen, but then all the common bindings would have to be an exception, and then backwards compatibility would be messed up for mods that use the old way of setting bindings... as I said this system is a mess.
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice