OpenBOR finally working fine on RETROPIE with ES
-
@darknior Well I rely also on the great coders here in the forum. So i just changed two lines in my version of
openbor.sh
install scriptmodule and let it compile as is it used to be. But I think this binary runs much better. The tearing in "Nightslashers" for ex. is significantly reduced with this.
I think the NO_GL=1 parameter makes the difference.I hope someone will port newest engine to Raspberry ... OpenBOR offers really great gameplay and I don't understand why there is so less attention from the developers from chronocrash. They don't consider the Rasperry as chance for wider audience and for further development for their addons (imho!). The smoothest thing would be an integration into libretro.
Second I just want to test the scriptmodule for a later PR - and yes it works, the %ROM% is written to emulator config instantly. So it may be possible to use your fork .... But I'm not sure if this is allowed.
Maybe @zerojay can answer this... (Sorry for tagging you) -
@cyperghost said in OpenBOR finally working fine on RETROPIE with ES:
I think the NO_GL=1 parameter makes the difference.
Ok thanks, it's a good idea :)
I will try your binary if it works better :)I hope someone will port newest engine to Raspberry
I hope too ... i think it can be interesting to show OpenBOR on pi on the Chronocrash forum ... showing it works fine on pi and that we stand for an update ...
I have plan to make a beautiful ES menu with media and make a video to show them ... but it will take me some time to release media...Second I just want to test the scriptmodule for a later PR - and yes it works, the %ROM% is written to emulator config instantly. So it may be possible to use your fork .... But I'm not sure if this is allowed.
Yes if Retropie can be updated with my fork and your script it can be really cool for every one :)
With the two mode, launch OpenBOR from port and a new ES section with all the games.
But we must also give some CFG already configured with pad for MENU and DEFAULT. -
@darknior said in OpenBOR finally working fine on RETROPIE with ES:
Yes if Retropie can be updated with my fork and your script it can be really cool for every one :)
Agreed! But not our buisness.
With the two mode, launch OpenBOR from port and a new ES section with all the games.
Well therefore we have the Docs section or the thread here
But we must also give some CFG already configured with pad for MENU and DEFAULT.
I don't think so. That should still be a user decission
-
@darknior There seems annother version of OpenBOR for RetroPie spreading around. It is also build 3016 but I was not able to get it running.
install script is here - a user named ulysess seems to have compiled it for several models. But I can't get it running. So it seems not to be the same version we are using.
-
@cyperghost
Other options in the Jose Cerrejón blog`s ... in spanish language
https://misapuntesde.com/post.php?id=567 -
@cyperghost Yes interesting, but only if he fix the save problem.
@kactius thanks for the link, he run Eman on PI ... strange ...
And use some parameters too :fbset -xres 512 -yres 384 -depth 16 SDL_FB_BROKEN_MODES=1 ./openbor_rpi
-
I will try the controller script within the next couple of days when I am back by my PC/Pi.
In response to having a default controller config, I would agree to having a default master.bor.cfg based on the whatever seems to be the most common controller layout. I'm sure many people would accept the pre-defined default setting, and users could easily change it if they wish.
The only reason I see that not being a possibility is openBOR looks for a specific controller in a specific USB port. So if I map my el' cheapo snes controller, if I switch to a PS3 controller (wired/same port) the mappings are all screwed up.
-
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
The only reason I see that not being a possibility is openBOR looks for a specific controller in a specific USB port.
No he don't because i have 6 different 8bitDo controllers, one from xBox One and all working fine with same gamepad configuration.
-
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
GreenHawk - if it's just 1 game your after, and you don't want to go through all the trouble I can help you create it easily.
Yes, I would like "Mortal Kombat Outworld Assasins" as a standalone title in my ES menu. Even outside of ports, just a nice MKOA logo by itself to start up the game.
-
@darknior said in OpenBOR finally working fine on RETROPIE with ES:
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
The only reason I see that not being a possibility is openBOR looks for a specific controller in a specific USB port.
No he don't because i have 6 different 8bitDo controllers, one from xBox One and all working fine with same gamepad configuration.
I think it could work this way. And if this is true it might be a good choice to assign Player1 to Joypads and Player2 to Keyboard (as default). OpenBOR is independent from libretro... so in fact there is one routine that searches input devices in system. So if one joypad is detected it will be assigned as joypad1 to player1. Sounds logical....
-
@greenhawk84
Here are the files you need to get MK Outword Assassin setup as an entry on the ports menuCopy the contents to the folder specified in folder name. One is the emulators.cfg, the other is the script, gamelist file and logo. If your already have a gamelist file, then just copy and paste the contests from <game> to </game>.
Make sure you are using the openbor binary with advanced compiling options.
Last, make sure your game.bor folder name matches Mortal Kombat - Outworld Assassins.bor - if not, rename it.
After you restart Emulation Station you should be good to go!
@cyperghost Your run command user menu is awesome! I love that I can delete a config and replace it right from runcommand.
@darknior I just tried different configs using a PS3 controller, a cheap "tata" brand SNES clone, and Xbox 360 with wireless adapter and they all map differently. It looks like I will go with the Xbox controller since that seems to be the standard many are based off of (also many controller mappers map to an xbox 360)
Could you please send me your master config? I just want to verify. Thank you
-
@darknior
I pushed the BOR-Selection menu script to v1.01 - get it here
First:
You can use multiple joypads in the script now. Was easy to fix but it isn't perfectat all. The devs out here are much more advanced in coding.
Second:
I sort the BOR mods by ABC now. The version lower than 1.01 showed the entries by access data on disk - a piped sort command did the trick.
Third:
More things to come?@cyperghost Your run command user menu is awesome! I love that I can delete a config and replace it right from runcommand.
Glad the User Menu script is working. It makes things a bit easier for you, I assume. It still can be improved a lot.
About the controller default. I tried with a cheap SNES Pad but this sets DPAD (digital) to analog signals. So no way to get this working with a aftermarkt PS3. So I think it's up to the user to set his default settings ...
I've also improved the UserMenu script a bit.
- If no Game config is available but a master-file is found the game will be setted automatically and the game will start
- If no master-file is found but a Game config is available I ask the user to set a new master file, exit to runcommand
- If no master-file and no Game config is available there will be a small message that there is nothing to do, exit to runcommand
- If a master file and a Game config is setted then I ask first to delete the game config and after that I ask second to delete master file! Exit to runcommand
4.1 Be aware by this action. If you deleted both files then there is no more possibility given to config this games.
4.2 You may start annother addon (with working config) then the script asks for creating a new master file.
4.3 Then start again the game with no config and it will automatically be setted
4.4 More to come? Were my words clear?
With 2 statuses of 2 files I can create 4 selection possiblities just with on if...then clause (I'm lazy!) - I think this covers a lot of usecases. And I'm satisfied with the result ;)
-
@cyperghost People are really going to find this very usefull. Being able to createa master config will take out the need to have a pc on hand! Maybe you can even have a selectable options such as "save current setting as" "master.bor.cfg". This makes it very simple to change controllers, and carry settings over on the fly. Excellent work you've been doing. I appreciate your time!
-
@cyperghost said in OpenBOR finally working fine on RETROPIE with ES:
4.4 More to come? Were my words clear?
Yes it's clear :)
@bizzar721 said in OpenBOR finally working fine on RETROPIE with ES:
Maybe you can even have a selectable options such as "save current setting as" "master.bor.cfg".
I love this idea, no need to have a PC ... it will be a great option <3
-
I'v try your OpenBOR EXE and it works fine for me :)
I have updated Selection.sh to 1.01 and it works fine too.
But i must always update some path ... why don't you put the master.bor.cfg to OpenBOR/Saves ?
Like that we don't modify the original emulator directory, and all save files will be where we want because it's a link we can move like we want :)
For my part i move it to /home/pi/RetroPie/medias/openbor/savefile on my USB hard drive :)For your new file Setup GamePads.sh ?
# Place file to /opt/retropie/configs/all/runcommand-menu # Access with USER Menu in runcommand.... Press just a button during greybox is visible
I create the directory, copy the file, launch a game and discover this menu i never see before : User Menu with your script ... really excellent. I don't try it for now.
I think a good way for users can be to give users a selectable options such as "save current setting as" "master.bor.cfg" when they launch a game with a CFG file if no MASTER cfg file was found.This User Menu is cool, but we can call it from any emulator, it is not assigned to any emulator section ... maybe it can confuse some users ...
-
@darknior said in OpenBOR finally working fine on RETROPIE with ES:
This User Menu is cool, but we can call it from any emulator, it is not assigned to any emulator section ... maybe it can confuse some users ...
When I read over the script, I saw some commands that checked to make sure if OpenBOR is the emulator open, and if not I believe it will exit.
-
@bizzar721 Yes it's thru ... and it's perfect for this.
But i don't think people will think to go to this menu and use this script.I think the best way is to let the user launching a game first time, and generating a CFG file for it.
Later when he launch an other, write him to use this CFG as default one for all others.
Like that, no computer, no ssh, and easy to use. But maybe i'm wrong ...
But if we give users a default MASTER CFG file it will never append.
And maybe in this case, using a script choose what CFG file we want to use as default can be a good idea.
Difficult problem to solve ...Before the SAVE problem in the OpenBOR source code !
-
@darknior said in OpenBOR finally working fine on RETROPIE with ES:
why don't you put the master.bor.cfg to OpenBOR/Saves
Well ... I use the openBOR directory because it's on my USB device and I can access this with SAMBA service from any PC connected. So I just use a backup copy of the master file and set it to this directory. But you're right I should change it from INI section. If you don't like the path you can change it in INI-Section of each script by yourself.
I think a good way for users can be to give users a selectable options such as "save current setting as" "master.bor.cfg" when they launch a game with a CFG file if no MASTER cfg file was found.
I think this is a ONE time operation and therefore the script is doing it's job. It checks if there is a config file for a game is present and if there is no master.bor.cfg it ask the user to make a default setting out of the setted game.
This User Menu is cool, but we can call it from any emulator, it is not assigned to any emulator section ... maybe it can confuse some users ...
As @BiZzAr721 already mentioned... I check presence of emulator call. If it's not OpenBOR the user will see a small message and will be returned to runcommand. And I think it does not confuse the user if you name it right. If the script is called
OpenBOR - Joypad config.sh
then there aren't confused user. You never used the script so it is hard to see the working mechanism behind. Just try it out.But i don't think people will think to go to this menu and use this script.
Indeed the UserMenu is a bit unknowen but it is the best way to start over. Because it gives you all entrypoints and info you need. And you don't have to tinker with joypad-calls. So it's a very good solution @BuZz provided for all of us. Sadly this item seems to be a bit underrated but I've placed 4 or 5 scripts into this.
I think the best way is to let the user launching a game first time, and generating a CFG file for it.
You can do that with
runcommand-onstart-sh
with the same trick I showed you to call my bash menu. I use my Selection menu for this and this copies a new set of files from a master-file on first call. I don't use the OpenBOR as ES main system so I rely on a automated configuration done automatically done be the Selection Menu script.But if we give users a default MASTER CFG file it will never append.
No, that's just an the usage of the user. If a game config is available and a master-file, too - the UserMenu script will ask if it can delete the game-config (select Yes or No) and after that it asks to delete the master-config (also select Yes or No)
Just try the script and tell me your experience. Feel free to fork it and make it better. I'm not against a windows that ask the user for a pre setting. I wrote this script in less than two hours and I'm satisfied with that. And out of 4 possibles file states you have some choices.
I think the best way is to let the user launching a game first time, and generating a CFG file for it.
Yes that's always first step. The file must be generated first
Later when he launch an other, write him to use this CFG as default one for all others.
So the UserMenu script acts with the exception you have to launch the ready configurated game again. Out of this configurated file the master.bor.cfg is resided if you call it via the UserMenu script. I can live with that....
But play around with the script and you will see it's a very convenient way of setting up OpenBOR.
-
@cyperghost I have change the path for me and it works fine. Thanks
Now the 3 problems we must solve to play fine BOR games on PI are :
OpenBOR not saving Hi-score and game progression :(
The most important!- Some games are in 16/9 (full screen) and there are black bar, we can't use the full screen!
- Some games crash when they use script functions that this OpenBOR version don't understand.
For the last bug number 3;
When we launch a game, we can read on runcommand log this : OpenBoR v3.0 Build 3016, Compile Date: Jul 7 2018
And when we read the @rofl0r info we can also read this version can make works the games to v3.0 Build 3400
I also read newer mods should work as well as now unknown commands will just be ignored.Thanks again @BiZzAr721 i will try to use your work, but it's hard because there are many version of each games over the web ...
For exemple the games from the list collection completed games that still rock. Includes many lost games. is fixed for OpenBOR 3979 ... bigger than our 3400.
The near PC version i've found to try our games is the 3482. I think it can be faster to try games on PC before sending them on PI, but maybe we will not have the same result :(I have try an excellent mod, Bare Knuckle 6, that works for me @BiZzAr721
It works fine, and you can play it on PI. But some time it come back to ES without any reason. Some time after 2 minutes some times after 30 ...
I open the runcommand logs to try to understand and i found this :Level Loaded: 'data/levels/easy/1.1storeh.txt' Loading 'Axe2' from data/chars/Axel/Axe2.txt Property name 'antigrab' is not supported by function getentityproperty. Loading 'axe3' from data/chars/Axel/Axe3.txt Property name 'antigrab' is not supported by function getentityproperty. Loading 'axe5' from data/chars/Axel/Axe5.txt Loading 'Axe6' from data/chars/Axel/Axe6.txt Property name 'antigrab' is not supported by function getentityproperty. Loading 'Axe7' from data/chars/Axel/Axe7.txt Property name 'antigrab' is not supported by function getentityproperty. Loading 'axe8' from data/chars/Axel/Axe8.txt Property name 'antigrab' is not supported by function getentityproperty. Property name 'antigrab' is not supported by function getentityproperty. Property name 'antigrab' is not supported by function getentityproperty. Property name 'antigrab' is not supported by function getentityproperty. Function getentityproperty must have a string property name. Script function 'getentityproperty' returned an exception, check the manual for details. OpCode: 8 OpCode: 8 OpCode: 8 shutdown called from Script_Execute ********** An Error Occurred ********** * Shutting Down * There's an exception while executing script 'animationscript'. Release level data...........Level Unloading: 'data/levels/easy/1.1storeh.txt' Done. Done! Release graphics data........ Done! Release game data............
If i understand fine, it search for an unknown antigrab commands but not ignored it...
What's the best way ? Maybe other mods use it ...
Must we downgrade mods to remove the function, or add a fake function to OpenBOR ?
I don't have the skill to work on this :( -
@darknior said in OpenBOR finally working fine on RETROPIE with ES:
Now the 3 problems we must solve to play fine BOR games on PI are :
OpenBOR not saving Hi-score and game progression :( The most important!
Some games are in 16/9 (full screen) and there are black bar, we can't use the full screen!
Some games crash when they use script functions that this OpenBOR version don't understand.Out of my basic buisness ... we need a C coder here!
But I rearranged my scripts a bit. The UserMenu was rewritten to 100% and is now very powerfull and more self explaining. Need some tests to do. I think I got a method to get an ultimate config file by stripping the inputs just to basic commands. Then the user gots gamepad input and can change the inputs directly with a joypad.
Maybe we can together create a master-file that's to 90% compatible with controllers.My personal button layout is:
D-PAD for up/down/left/right then the 4 buttons O Attack 2 O Special O Attack 1 O Jump Shoulder Left and Right are Attack 3 and 4 Start is clear, isnt' it?
In my setup (for sliced config) file you will be able to download later the button layout is just for the 4 buttons. This is enough to setup a game with correct button layout.
O UP O ATTACK1 O START O DOWN
So we have basic movement but can rely most controllers will work kind this way (not all, but the chance is high to catch a button just by trying all buttons on the controller one by one) The D-PAD is a bastard. Some controllers are using a DPAD but is it setted as analog input. So movement is better setted on these buttons just for configuration purposes (!!!).
I think the ultimate fitting file for all controllers is impossible to find. May you and @BiZzAr721 can try the settings.
I will release the new script in the next few days.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.