mackorone / mms

A Micromouse simulator: write and test maze-solving code without a physical robot
MIT License
395 stars 83 forks source link

moveForwardHalf & checkWall Not Working #27

Open ibraheemalayan opened 1 year ago

ibraheemalayan commented 1 year ago

in the latest available release ( v1.1 ) the commands WallFront, WallRight, moveForwardHalf do not return an ack and the simulator doesn't respond

ibraheemalayan commented 1 year ago

@mackorone could you upload a new build from the latest commit to github releases ? I was not able to build it on an apple-sillicon mac

mackorone commented 1 year ago

@ibraheemalayan, a few things:

  1. All of the commands start with a lowercase letter, so it should be wallFront and wallRight
  2. You're absolutely correct that the latest release does not support moveForwardHalf yet, that's on my to-do list
  3. I don't own a computer with Apple silicon, so it's unlike I'll be able to upload a release for that OS in the near future

I was not able to build it on an apple-sillicon mac

What issues did you face? I can try to help you debug, if you want.

ibraheemalayan commented 1 year ago

@mackorone Thanks for the reply.

If you could upload the latest compiled binary for windows or mac ( apple sillicon or intel ) , any of them will be amazing.

the issue with wallFront, wallRight was that I am sending a half_steps_away parameter which again is not supported in the older version ( v1.1 ).

I was not able to compile the code even on windows ( and Qt installer takes forever to download any missing stuff ).

Blaze-Leo commented 1 year ago

are you applying an exact half_steps_away value always or is it variable depending on your code?

ibraheemalayan commented 1 year ago

are you applying an exact half_steps_away value always or is it variable depending on your code?

I was trying to check for walls in the front cell ( emulating lateral IR sensors ) which I recognized is not available in that version.

Even If I pass half_steps_away=0 the python API will add it to the command and the simulator stops responding.

It only works if I pass it as None so the command's final format is compatible with that version.

Again, the main issue I faced ( and mostly anyone who tries to use it ) is that the documentation on github for the latest version has no warning or indicator that the available releases are too old for those docs to work. Also the APIs implement a lot of the new features not available in the old release.

And the most significant issue is that building from source is not straightforward like downloading an environment and compiling some code. QT installation experience was extremely unfriendly and too much for most mechanical/mechatronics engineers, and even electrical engineers.

The best solution is to simply publish a new compiled versions of any stable commit that supports the documented features in the latest README.